Visual C++ .NET - Comando para sobrear etiquetas

 
Vista:

Comando para sobrear etiquetas

Publicado por Jose Carlos (1 intervención) el 06/10/2006 22:31:44
Hola, quisiera saber cual es el comando para q despues de apretar un boton, me made el puntero a una etiqueta seleccionando todo lo q esta escrito en la etiqueta, el SetFocus es para q mande el puntero a la etiqueta deseada, pero yo no quiero q solo sea puntero, si no q aparesca seleccionado todo lo q aparece en la etiqueta, aqui abajo adjunto la parte del cogido donde quiero mandar el puntero.

void RegistrarNotasDlg::OnButtonModificar()
{
// TODO: Add your control notification handler code here

GetDlgItem(IDC_BUTTON_MODIFICAR)->EnableWindow(false);
GetDlgItem(IDC_EDIT_EXAMENPARCIAL)->EnableWindow(true);
GetDlgItem(IDC_EDIT_EXAMENFINAL)->EnableWindow(true);
GetDlgItem(IDC_EDIT_LABORATORIO)->EnableWindow(true);
---------> GetDlgItem(IDC_EDIT_EXAMENPARCIAL)->SetFocus();

}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Seleccionar todo el texto en un control de edición al hacer clic en un botón

Publicado por Alejandro (265 intervenciones) el 29/01/2024 23:40:47
José, para seleccionar todo el texto en un control de edición (como `CEdit`) después de darle el foco, puedes usar el mensaje `EM_SETSEL` en combinación con la longitud del texto. Aquí te dejo cómo podrías modificar tu código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void RegistrarNotasDlg::OnButtonModificar()
{
    // TODO: Add your control notification handler code here
 
    GetDlgItem(IDC_BUTTON_MODIFICAR)->EnableWindow(false);
    GetDlgItem(IDC_EDIT_EXAMENPARCIAL)->EnableWindow(true);
    GetDlgItem(IDC_EDIT_EXAMENFINAL)->EnableWindow(true);
    GetDlgItem(IDC_EDIT_LABORATORIO)->EnableWindow(true);
 
    CEdit* pEdit = static_cast<CEdit*>(GetDlgItem(IDC_EDIT_EXAMENPARCIAL));
 
    if (pEdit != nullptr)
    {
        pEdit->SetFocus();  // Establecer el foco en el control de edición
 
        // Seleccionar todo el texto en el control de edición
        pEdit->SetSel(0, -1);
    }
}

En este código, he utilizado `CEdit` para representar el control de edición. Asegúrate de incluir los encabezados y las bibliotecas necesarias para trabajar con MFC y controles de edición.

La función `SetSel` se utiliza para seleccionar un rango de texto en el control de edición. Con los parámetros `0` y `-1`, selecciona todo el texto en el control.

Recuerda ajustar el identificador (`IDC_EDIT_EXAMENPARCIAL`) según el que estás usando en tu recurso de diálogo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar