PDA

Ver la Versión Completa : eventos de teclado en una aplicacion CLX


ctronx
11-06-2004, 17:55:47
TENGO PROBLEMAS CON EVENTOS DE TECLADO CUANDO CREO UNA APLICACION CLX, CON EL SIGUIENTE CODIGO EN SU RESPECTIVO EVENTO DE KeyDown:

if key=vk_f1 then begin
//CODIGO, CODIGO, ETC.
end;

EN UNA APLICACION NORMAL, NO TENGO NINGUN PROBLEMA PERO CUANDO QUIERO QUE CORRA EN UNA APLICACION CLX ME MARCA ERROR: [Error] Unit1.pas(30): Undeclared identifier: 'vk_f1'

SI ALGUIEN ME PUEDE AYUDAR SE LOS AGRADESCO MUCHO. (USO DELPHI 7)

cbrrr
11-06-2004, 18:08:06
eso es devido a que las constantes VK_XXX están definidas sólo para Windows y, se supone que una app CLX puede ser multiplataforma con lo que no puedes usar nada que sea propio de este S.O.

Prueba a cambiar VK_F1 por su respectivo valor (se que son caracteres pero ahora no sabría asegurarte cuales)

marto
11-06-2004, 18:12:22
ctronx , te importaría no GRITAR!!!

ctronx
12-06-2004, 01:26:21
mil disculpas por gritar, estaba tan concentrado escribiendo que no me di cuenta hasta haberlo mandado pero ya era tarde.

regresando a lo del problema de los eventos de teclado, segui el consejo anterior y puse :
if key=4144 then begin
//codigo, codigo;
end;

en donde 4144 es el valor de la tecla F1, mi duda es: ¿ese valor de donde lo toma la tecla F1 (o sea me lo respetaria en linux o solo en windows).

gracias por la ayuda que puedan brindarme.

cbrrr
12-06-2004, 01:38:38
a mi me da que el Virtual Key Code del F1 es 112, no 4144

De todas maneras, sí, en principio debería de funcionarte también bajo Linux, aunque no lo garantizo, deberías de probarlo

ctronx
12-06-2004, 17:55:02
gracias, de esta manera tomando el valor de cada tecla si me esta funcionando en una aplicacion clx, asi le voy a seguir, si tienes una manera mejor de trabajar los eventos de teclado en una aplicacion clx te agradecere me comentes cual, en caso contrario gracias por el apoyo.