Clipper/FiveWin - lisbox

 
Vista:

lisbox

Publicado por manueld iaz (5 intervenciones) el 24/03/2007 10:54:10
hola necesito ayuda

como salir de edicion de un lisbox desde un boton
me explico
en una interfaz tactil he conseguido que pulsando un boton en pantalla el lisbox entre
en edicion , editcell(xxxxx), para salir de ella tengo que pulsar (enter) que funcion tengo que poner y donde para que salga de la edicion pulsando en un boton en pantalla
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:lisbox

Publicado por El Duro (121 intervenciones) el 26/03/2007 15:25:59
Manuel:

Se me ocurre que al dar CLIC sobre el botón que deseas usar para salir de la pantalla mandes el ENTER al teclado aunque prefiero usar la tecla ESC, habra que investigar si con la tecla ESC tambien se sale del modo de edición.

En cualquier caso podrías usar una función como la siguiente:

DEFINE BUTTON etc etc etc ACTION (Fuera(oDlg),oDlg:END())
....
....
....
FUNCTION Fuera(oDlg)
oDlg:PostMsg(WM_KEYDOWN,VK_ESCAPE,0)
RETURN(.T.)

Ojala esto te funcione, El Duro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:lisbox

Publicado por manueldiaz (5 intervenciones) el 27/03/2007 23:05:19
Hola el Duro gracias por tu ayuda pero no funciona
el problema es, que siendo un sistema tactil se supone que no tendo el teclado a mano, ademas operar con la pantalla y el teclado a la vez es poco profecional,
cuando pulso el boton (iniciar) el LISBOX entra en la funcion EITCELL( xxxxxx )
y como le he mandado el keyboard(chr(13))
entra en la funcion edicol(1,x)
en este momento se queda el primer campo en edicion y el programa no reconoce la pulsacion de ningun control pero si el teclado, claro esta que tengo que salir de la edicion con un boton y no utilizar el teclado

seria algo como esto

1 @ x,x lisbox olbx

2 olbx:un caractel = { || editcell(ncol,rcol,) }

3 @ x.,x boton ( le mando action keyboard(chr(13)))

al pulsar en el boton de la linea 3 envia un enter que recoge la linea 2
y entra en edicion linea 4

4 function editcell(col,)

editcol(1,x)
// si elcampo esta Vacio alpulsar (ENTER ) me saca de la edicion
// pero aqui solo reconoce el teclado al pulsar sobre un boton que le
// mande un (ENTER)
return nil
endif
return
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:lisbox

Publicado por El Duro (121 intervenciones) el 28/03/2007 00:55:29
Manuel:

Probaste la función que te sugerí ???

Para el código KEYBOARD(CHR(13)) necesitas el teclado ????, pues la función que te sugiero tampoco.

Con KEYBOARD() entras en modo de edición y con la función que yo te sugiero saldras del modo de edición sin necesidad del teclado.

La función que te sugiero es el equivalente a utilizar KEYBOARD(CHR(27)) solo que con la función estas indicando claramente el dialogo que recibira el pulso.

El Duro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar