Vous êtes sur la page 1sur 1

Usar la tecla Enter para moverse a travs de una DW

Alguna vez habrs tenido que desarrollar una aplicacin en la que haya una insercin de datos intensiva y los usuarios insistan en usar la tecla Enter para moverse de campo a campo en la Datawindow. Normalmente los usuarios piden esta caracterstica porque esta es la tecla que usan habitualmente o porque la posicin de la tecla Enter es ms cmoda que la tecla de tabulacin. Una opcin fcil para hacer esto es simular la pulsacin de la tecla de tabulacin cuando el usuario pulse la tela Enter enviando un mensaje a la cola de las ventanas. Post es una funcin de PowerScript que aade un mensaje a la cola de espera de mensajes de una ventana. Aunque no est escrito en la ayuda se pueden aadir mensajes para controles, incluyendo Datawindows. Envindo el mensaje WM_KEYDOWN (9) con el cdigo virtual de la tecla de tabulacin (256) conseguiremos los resultados deseados. - En la Datawindow, declara un evento mapeado a pbm_dwnprocessenter y aade el siguiente cdigo: Post( Handle(this),256,9,0 ) Return 1 - Esta tcnica tambin funciona sobre controles de ventana, como moverse a travs del control Single Line Edit. Mapeando un evento a pbm_keydown y colocando las siguientes lneas de cdigo: IF key = KeyEnter! THEN Post(Handle(this), 256,9,0) END IF - Este ltimo truco no funciona bien con botones porque la pulsacin de la tecla Enter dispara el evento Clicked sobre el botn cuando es el botn por defecto. Sin embargo, colocando este cdigo en el evento Clicked elimina el problema. Date cuenta de que el botn necesitar un evento pbm_keydown como se explica ms arriba si este no es un botn por defecto para procesar la tecla Enter como la tecla de tabulacin: IF KeyDown(KeyEnter!) THEN Post(Handle(this), 256, 9 ,0) RETURN 0 END IF

Vous aimerez peut-être aussi