Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Sab 01 Nov, 2003 12:34 am Asunto: |
|
|
intenta con OnKeyPreview igual a true, y en el evento del OnKeyPress, captura las teclas que no te sirvan para enviar lo siguiente Key=0;
puede ser en este, o como son teclas de funcion, debes usar, otro evento, las teclas se denominan virtual key, y vienen precedidas por las siglas VK_RETURN para la tecla enter, o VK_ESC, para la escape..
por ejemplo en el siguiente ejemplo se captura la tecla 1 y divide del teclado numerico (recuerda poner KeyPreview=true), en las propiedades del form.
| Código: |
//---------------------------------------------------------------------------
void __fastcall TForm1::FormKeyUp(TObject *Sender, WORD &Key,
TShiftState Shift)
{
swtich(Key){
case VK_NUMPAD1:
case VK_DIVIDE:
//etc o ponlas en linea
Key=0;
break;
}
// ESTAS SON LAS TECLAS QUE DEBES CAPTURAR
/*VK_NUMPAD0 0 key (numeric keypad)
VK_NUMPAD1 1 key (numeric keypad)
VK_NUMPAD2 2 key (numeric keypad)
VK_NUMPAD3 3 key (numeric keypad)
VK_NUMPAD4 4 key (numeric keypad)
VK_NUMPAD5 5 key (numeric keypad)
VK_NUMPAD6 6 key (numeric keypad)
VK_NUMPAD7 7 key (numeric keypad)
VK_NUMPAD8 8 key (numeric keypad)
VK_NUMPAD9 9 key (numeric keypad)
VK_MULTIPLY Multiply key (numeric keypad)
VK_ADD Add key (numeric keypad)
VK_SEPARATOR Separator key (numeric keypad)
VK_SUBTRACT Subtract key (numeric keypad)
VK_DECIMAL Decimal key (numeric keypad)
VK_DIVIDE Divide key (numeric keypad)
*/
}
//---------------------------------------------------------------------------
|
_________________
 |
|