Tengo un proceso con el tArrayBrowse donde estoy validando teclas con el
OnKeyDown, la cosa es que Valido que si el usuario pulsa Enter, me voy a
modo de edicion, pero, la primera columna se va de largo como si le hubiera
dado Enter nuevamente.
Como hago que despues de validar el enter limpie el buffer?
En clipper usaba __keyboard().
Gracias de antemano.
Saludos.
Ramón Zea
PD.: esta muy quieta la sala, y eso por que?
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Vaciar keyboard buffer
-
- Mensajes: 1831
- Registrado: Mar Oct 11, 2005 9:53 am
Vaciar keyboard buffer
Ramón Zea
Móvil: 01-993-231-62-29
ramonzea@yahoo.com
zeasoftware@hotmail.com
zeasoft.movil@hotmail.com
http://www.paginasprodigy.com/zeasoftware/
Móvil: 01-993-231-62-29
ramonzea@yahoo.com
zeasoftware@hotmail.com
zeasoft.movil@hotmail.com
http://www.paginasprodigy.com/zeasoftware/
Vaciar keyboard buffer
Ramón,
> Tengo un proceso con el tArrayBrowse donde estoy validando teclas con el
> OnKeyDown, la cosa es que Valido que si el usuario pulsa Enter, me voy a
> modo de edicion, pero, la primera columna se va de largo como si le
> hubiera dado Enter nuevamente.
Muestrame el código que estás usando.
> PD.: esta muy quieta la sala, y eso por que?
La verdad es que, desde hace bastante tiempo, los foros privados tienen más
actividad que éste.
--
Un saludo,
José F. Giménez
> Tengo un proceso con el tArrayBrowse donde estoy validando teclas con el
> OnKeyDown, la cosa es que Valido que si el usuario pulsa Enter, me voy a
> modo de edicion, pero, la primera columna se va de largo como si le
> hubiera dado Enter nuevamente.
Muestrame el código que estás usando.
> PD.: esta muy quieta la sala, y eso por que?
La verdad es que, desde hace bastante tiempo, los foros privados tienen más
actividad que éste.
--
Un saludo,
José F. Giménez
-
- Mensajes: 1831
- Registrado: Mar Oct 11, 2005 9:53 am
Vaciar keyboard buffer
Aqui te lo anexo el codigo donde estoy validando las teclas, ando bien?
Saludos.
METHOD ArrayBrowse1KeyDown( oSender, nKey, nFlags ) CLASS TFrmFacturas
Do Case
Case ( nKey == VK_DELETE )
With Object ::oArrayBrowse1
If ( :nLen > 0 )
:DelRow()
End
End with
Case ( nKey == VK_RETURN )
With Object ::oArrayBrowse1
If ( :nLen == 0 .Or. :nArrayAt == :nLen )
:AddRow( { 0, "", "", 0, 0 }) //, :nArrayAt )
:GoBottom()
End
:Edit() //aqui se pasa en banda la primera captura.,,
End with
EndCase
RETURN Nil
Saludos.
METHOD ArrayBrowse1KeyDown( oSender, nKey, nFlags ) CLASS TFrmFacturas
Do Case
Case ( nKey == VK_DELETE )
With Object ::oArrayBrowse1
If ( :nLen > 0 )
:DelRow()
End
End with
Case ( nKey == VK_RETURN )
With Object ::oArrayBrowse1
If ( :nLen == 0 .Or. :nArrayAt == :nLen )
:AddRow( { 0, "", "", 0, 0 }) //, :nArrayAt )
:GoBottom()
End
:Edit() //aqui se pasa en banda la primera captura.,,
End with
EndCase
RETURN Nil
Ramón Zea
Móvil: 01-993-231-62-29
ramonzea@yahoo.com
zeasoftware@hotmail.com
zeasoft.movil@hotmail.com
http://www.paginasprodigy.com/zeasoftware/
Móvil: 01-993-231-62-29
ramonzea@yahoo.com
zeasoftware@hotmail.com
zeasoft.movil@hotmail.com
http://www.paginasprodigy.com/zeasoftware/
-
- Mensajes: 1831
- Registrado: Mar Oct 11, 2005 9:53 am
Vaciar keyboard buffer
> La verdad es que, desde hace bastante tiempo, los foros privados tienen
> más actividad que éste.
Cuales foros?
en su ciudad?
Saludos.
> más actividad que éste.
Cuales foros?
en su ciudad?
Saludos.
Ramón Zea
Móvil: 01-993-231-62-29
ramonzea@yahoo.com
zeasoftware@hotmail.com
zeasoft.movil@hotmail.com
http://www.paginasprodigy.com/zeasoftware/
Móvil: 01-993-231-62-29
ramonzea@yahoo.com
zeasoftware@hotmail.com
zeasoft.movil@hotmail.com
http://www.paginasprodigy.com/zeasoftware/
Vaciar keyboard buffer
Ramón,
cuando proceses una tecla y no quieras que Xailer o windows hagan algo con
ella, tienes que retornar 0. Así:
> METHOD ArrayBrowse1KeyDown( oSender, nKey, nFlags ) CLASS TFrmFacturas
> Do Case
> Case ( nKey == VK_DELETE )
> With Object ::oArrayBrowse1
> If ( :nLen > 0 )
> :DelRow()
>
> End
>
> End with
RETURN 0
> Case ( nKey == VK_RETURN )
>
> With Object ::oArrayBrowse1
> If ( :nLen == 0 .Or. :nArrayAt == :nLen )
> :AddRow( { 0, "", "", 0, 0 }) //, :nArrayAt )
> :GoBottom()
>
> End
>
> :Edit() //aqui se pasa en banda la primera captura.,,
>
> End with
RETURN 0
> EndCase
>
> RETURN Nil
En caso contrario, Xailer le pasa de nuevo la tecla al control contenedor
del control que tenía el foco de teclado; puede ser el propio formulario o
un panel, bevel, etc.. Así, la tecla va pasando de control a control hasta
llegar al formulario; si éste último no la procesa, pues se la reenvía a
windows.
En cualquier punto de la cadena puedes retornar 0, y entonces se da por
procesada y no se propaga más.
--
Un saludo,
José F. Giménez
cuando proceses una tecla y no quieras que Xailer o windows hagan algo con
ella, tienes que retornar 0. Así:
> METHOD ArrayBrowse1KeyDown( oSender, nKey, nFlags ) CLASS TFrmFacturas
> Do Case
> Case ( nKey == VK_DELETE )
> With Object ::oArrayBrowse1
> If ( :nLen > 0 )
> :DelRow()
>
> End
>
> End with
RETURN 0
> Case ( nKey == VK_RETURN )
>
> With Object ::oArrayBrowse1
> If ( :nLen == 0 .Or. :nArrayAt == :nLen )
> :AddRow( { 0, "", "", 0, 0 }) //, :nArrayAt )
> :GoBottom()
>
> End
>
> :Edit() //aqui se pasa en banda la primera captura.,,
>
> End with
RETURN 0
> EndCase
>
> RETURN Nil
En caso contrario, Xailer le pasa de nuevo la tecla al control contenedor
del control que tenía el foco de teclado; puede ser el propio formulario o
un panel, bevel, etc.. Así, la tecla va pasando de control a control hasta
llegar al formulario; si éste último no la procesa, pues se la reenvía a
windows.
En cualquier punto de la cadena puedes retornar 0, y entonces se da por
procesada y no se propaga más.
--
Un saludo,
José F. Giménez