| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
|
| Volver arriba |
|
 |
bosoft Master

Registrado: 23 Oct 2005Mensajes: 342
|
Publicado: Vie 06 Jun, 2014 7:36 pm Asunto: Re: Llamar al evento KeyUp en un TEdit |
|
|
| Angel escribió: | | ¿Como le pasaría el parámetro TShifState si tengo que llamar "a capón" al evento OnKeyUp de un TEdit? |
ufff, no he pillado ni una
saludos |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
Publicado: Sab 07 Jun, 2014 9:29 am Asunto: Re: Llamar al evento KeyUp en un TEdit |
|
|
| bosoft escribió: | | ufff, no he pillado ni una |
Me he explicado mal.
Tengo un código en el que me hace falta llamar a este evento al salir de un formulario de ayuda:
| Código: | fSelSoc->Lista->Items->Item[0]->Selected = true;
fSelSoc->Lista->Selected->MakeVisible(true);
fSelSoc->ShowModal();
Socio->Text = "";
Apellidos->Text = "";
Nombre->Text = "";
if (fSelSoc->pSelItem != NULL)
{
Socio->Text = fSelSoc->pSelItem->SubItems->Strings[1];
Apellidos->Text = fSelSoc->pSelItem->Caption.SubString(1, fSelSoc->pSelItem->Caption.Pos(",") - 1);
Nombre->Text = fSelSoc->pSelItem->Caption.SubString(fSelSoc->pSelItem->Caption.Pos(",") + 1, fSelSoc->pSelItem->Caption.Length()).Trim();
}
ApellidosKeyUp(NULL, 32, cShift); |
Cuando vuelvo de ese formularia fSelSoc (que contiene un TListView), si no vuelve seleccionado unh ítem (pSelItem) debe inhabiltarse un botón y eso lo verifico en ese OnKeyUp.
| Código: | void __fastcall TForm1::Edit1KeyUp(TObject *Sender, WORD &Key, TShiftState Shift) |
Con los dos primeros parámetros no tengo problema: le paso NULL en el TObject y 32 (espacio vacío) en Word; pero ¿como le paso TShiftState?
Ese cShift que está ahí está declarado como unsigned char y valor nulo ('\0'); al compilar me da dos errores en esa llamada:
E2034 Cannot convert 'unsigned char' to 'TShiftState'
E2342 Type mismatch in parameter 'Shift' (wanted 'TShiftState', got 'unsigned char')
Ese es el problema que tengo. Por más que he mirado la ayuda del evento no comprendo como hacer la llamda. _________________ Un saludo
Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA) |
|
| Volver arriba |
|
 |
bosoft Master

Registrado: 23 Oct 2005Mensajes: 342
|
Publicado: Sab 07 Jun, 2014 8:32 pm Asunto: Re: Llamar al evento KeyUp en un TEdit |
|
|
| Angel escribió: | | bosoft escribió: | | ufff, no he pillado ni una |
Me he explicado mal.
Tengo un código en el que me hace falta llamar a este evento al salir de un formulario de ayuda:
| Código: | fSelSoc->Lista->Items->Item[0]->Selected = true;
fSelSoc->Lista->Selected->MakeVisible(true);
fSelSoc->ShowModal();
Socio->Text = "";
Apellidos->Text = "";
Nombre->Text = "";
if (fSelSoc->pSelItem != NULL)
{
Socio->Text = fSelSoc->pSelItem->SubItems->Strings[1];
Apellidos->Text = fSelSoc->pSelItem->Caption.SubString(1, fSelSoc->pSelItem->Caption.Pos(",") - 1);
Nombre->Text = fSelSoc->pSelItem->Caption.SubString(fSelSoc->pSelItem->Caption.Pos(",") + 1, fSelSoc->pSelItem->Caption.Length()).Trim();
}
ApellidosKeyUp(NULL, 32, cShift); |
Cuando vuelvo de ese formularia fSelSoc (que contiene un TListView), si no vuelve seleccionado unh ítem (pSelItem) debe inhabiltarse un botón y eso lo verifico en ese OnKeyUp.
| Código: | void __fastcall TForm1::Edit1KeyUp(TObject *Sender, WORD &Key, TShiftState Shift) |
Con los dos primeros parámetros no tengo problema: le paso NULL en el TObject y 32 (espacio vacío) en Word; pero ¿como le paso TShiftState?
Ese cShift que está ahí está declarado como unsigned char y valor nulo ('\0'); al compilar me da dos errores en esa llamada:
E2034 Cannot convert 'unsigned char' to 'TShiftState'
E2342 Type mismatch in parameter 'Shift' (wanted 'TShiftState', got 'unsigned char')
Ese es el problema que tengo. Por más que he mirado la ayuda del evento no comprendo como hacer la llamda. |
Y si lo declaras | Código: | TShiftState cShift; |
Ahora no puedo, pero prometo hacer unas pruebas si no lo has resuelto tu antes
Saludos |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
|
| Volver arriba |
|
 |
bosoft Master

Registrado: 23 Oct 2005Mensajes: 342
|
Publicado: Dom 08 Jun, 2014 6:50 pm Asunto: |
|
|
| Angel escribió: | | Esto últimoo lo había probado; no se me ocurrió. |
no me queda claro si lo habías probado. ¿falta la n o sobra la o?
Me queda claro que no se te había ocurrido.
¿te funciona?
saludos |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
Publicado: Lun 09 Jun, 2014 4:13 pm Asunto: |
|
|
| bosoft escribió: | | Angel escribió: | | Esto últimoo lo había probado; no se me ocurrió. |
no me queda claro si lo habías probado. ¿falta la n o sobra la o?
Me queda claro que no se te había ocurrido.
¿te funciona?
saludos |
Falta un espacio y una n; el maldito corrector del tablet. No he podido probarlo todavía; ya te diré. _________________ Un saludo
Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA) |
|
| Volver arriba |
|
 |
escafandra Master

Registrado: 29 Nov 2007Mensajes: 625Ubicación: Madrid - España
|
Publicado: Mar 10 Jun, 2014 9:29 pm Asunto: |
|
|
¿Que valores quieres darle a TShiftState?
Saludos. |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
|
| Volver arriba |
|
 |
escafandra Master

Registrado: 29 Nov 2007Mensajes: 625Ubicación: Madrid - España
|
Publicado: Mie 11 Jun, 2014 9:20 pm Asunto: |
|
|
| Código: | Edit1KeyDown(0, VK_F1, TShiftState()<<ssShift); |
Saludos. |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
|
| Volver arriba |
|
 |
|