¿En el visual fox existe alguna función parecida al on key label de fox 2.6? Es decir quiero que si el usuario apriete el botón QUE que haga alguna acción pej que aparezca una pantalla de ayuda para buscar el cliente... Etc
Espero poder ayudarte. Si en visual fox existe esa función que la podes usar en un formulario o en un objeto. En realidad es un evento que se puede intersectar. El evento se llama keypress Cada objeto en un formulario tiene su evento keypress por eso es bueno saber cual es el ámbito en el cual quieres usarlo Fíjate en el formulario, en los eventos, busca en keypress y va a abrir una pantalla de código con un parámetro inicial: LPARAMETERS nKeyCode, nShiftAltCtrl El primero te dice el código ascii de la tecla presionada. Podes fijarte en la ayuda de la función inkey() para ver los códigos El segundo parámetro el usuario ademas de presionar una tecla, tenia la tecla shift, control o alt presionadas o más de una simultáneamente.. El valor para nShiftAltCtrl es: 1 = Shift 2 = Control 4 = Alt Si hay más de una de estas teclas presionadas se suman los valores, por ejemplo si tiene control+alt el valor de nShiftAltCtrl es 6. Vos podes evaluar esta tecla y hacer alguna función: Para tu ejemplo sería algo asi en el evento keypress del formulario LPARAMETERS nKeyCode, nShiftAltCtrl if nKeyCode=107 do miAyuda noDefault endif La utilización de noDefault en el código es para que no se escriba la QUE en el objeto donde estaba el usuario cuando presiono la tecla. Ahora, para que el evento keypress del formulario tenga ámbito sobre todo el formulario incluyendo los objetos que tiene, la propiedad keyPreview del formulario debe estar en .t. (verdadero) Espero te haya sido de utilidad y estamos en contacto Keystone - Christian
¿Hola gracias por la respuesta igual no lo entiendo del todo me podrías mandar algún ejemplito para ver como se usa?
Código de ejemplo (esto va en el método keypress del formulario) LPARAMETERS nKeyCode, nShiftAltCtrl if nKeyCode=107 Do miAyuda NoDefault Endif La propiedad keyPreview del formulario va en .t. Listo ahora ejecutas el formulario cuando presiones la tecla QUE, se disparara el "do miAyuda" (lo tienes que cambiar por lo que vos quieras hacer) Los códigos de nKeyCode (para cada tecla) los sacas de la ayuda de la función INKEY() que son los mismos