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.

Browse: impedir que se posicionen en una fila

Foro de Xailer profesional en español
Responder
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

Browse: impedir que se posicionen en una fila

Mensaje por jose.luis »

Hola,
Me gustaría hacer lo siguiente:
Un arraybrowse con 4 columnas y 3 filas. nMarqueeStyle := bmSOLIDCELL y
para cada columna nEditType := beGET.
Este browse es estático en cuanto a filas y columnas.
Las dos primeras filas contiene información inalterable. La última fila se
utiliza para entrar datos.
Quisiera que el usuario NO pudiera acceder a las dos primeras filas ni con
el ratón ni con el teclado. Es decir, la fila activa sea siempre la
tercera.
He mirado los eventos onchange y keydown pero no consigo el efecto deseado
(o no ser ver cómo).
¿Podeis darme alguna pista a seguir?
Saludos y gracias,
José Luis Capel
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9453
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Browse: impedir que se posicionen en una fila

Mensaje por ignacio »

José Luis,
Me temo que no es posible. Lo siento
Un saludo,
"José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
news:44bcb3be$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> Me gustaría hacer lo siguiente:
>
> Un arraybrowse con 4 columnas y 3 filas. nMarqueeStyle := bmSOLIDCELL y
> para cada columna nEditType := beGET.
>
> Este browse es estático en cuanto a filas y columnas.
>
> Las dos primeras filas contiene información inalterable. La última fila
> se utiliza para entrar datos.
>
> Quisiera que el usuario NO pudiera acceder a las dos primeras filas ni con
> el ratón ni con el teclado. Es decir, la fila activa sea siempre la
> tercera.
>
> He mirado los eventos onchange y keydown pero no consigo el efecto deseado
> (o no ser ver cómo).
>
> ¿Podeis darme alguna pista a seguir?
>
> Saludos y gracias,
> José Luis Capel
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

Browse: impedir que se posicionen en una fila

Mensaje por jose.luis »

Ignacio,
>
> Me temo que no es posible. Lo siento
>
Me esperaba algo así... De hecho, lo que pretendo hacer no lo había visto
antes en ningún otro sitio.
Saludos,
José Luis Capel
zeasoftware
Mensajes: 1831
Registrado: Mar Oct 11, 2005 9:53 am

Browse: impedir que se posicionen en una fila

Mensaje por zeasoftware »

Usa esto en el FormInitialize:
WITH OBJECT ::oBrowse1
:SetArray( ::aPartidas )
:aCols[1]:oGridEdit:lTabStop := .f.
:aCols[1]:oGridEdit:lReadOnly := .t.
:aCols[2]:oGridEdit:lTabStop := .f.
:aCols[2]:oGridEdit:lReadOnly := .t.
END
Saludos.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/
"José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
news:44bcb3be$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> Me gustaría hacer lo siguiente:
>
> Un arraybrowse con 4 columnas y 3 filas. nMarqueeStyle := bmSOLIDCELL y
> para cada columna nEditType := beGET.
>
> Este browse es estático en cuanto a filas y columnas.
>
> Las dos primeras filas contiene información inalterable. La última fila
> se utiliza para entrar datos.
>
> Quisiera que el usuario NO pudiera acceder a las dos primeras filas ni con
> el ratón ni con el teclado. Es decir, la fila activa sea siempre la
> tercera.
>
> He mirado los eventos onchange y keydown pero no consigo el efecto deseado
> (o no ser ver cómo).
>
> ¿Podeis darme alguna pista a seguir?
>
> Saludos y gracias,
> José Luis Capel
>
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

Browse: impedir que se posicionen en una fila

Mensaje por Xevi »

José Luis,
Yo lo estoy utilizando en un Browse de 7 columnas, que me resulta IMPRESCINDIBLE que se posicione en la columna 3 en un caso determinado...
En OnChange del Browse
METHOD Browse2Change( oSender, lBookMarkChanged ) CLASS TFrmORAlbarans
If ::oBrowse2:nColSel # 3
//Desactivo el evento por si realiza algunas operaciones mas de la cuenta
::oBrowse2:OnChange := Nil
::oBrowse2:SelectCol(3)
::oBrowse2:OnChange := "Browse2Change"
Else
...
EndIf
....
Return Nil
Sólo un pequeño destello de cambio de columna si se mantiene pulsado premanentemente las teclas Izq. o Der.
Pero me funciona perfectamente
Un Saludo,
Xevi.
"José Luis Capel" <jose.luis@iaicom.com> ha escrit al missatge del grup de discussió: 44bcb3be$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> Me gustarí­a hacer lo siguiente:
>
> Un arraybrowse con 4 columnas y 3 filas. nMarqueeStyle := bmSOLIDCELL y
> para cada columna nEditType := beGET.
>
> Este browse es estático en cuanto a filas y columnas.
>
> Las dos primeras filas contiene información inalterable. La última fila se
> utiliza para entrar datos.
>
> Quisiera que el usuario NO pudiera acceder a las dos primeras filas ni con
> el ratón ni con el teclado. Es decir, la fila activa sea siempre la
> tercera.
>
> He mirado los eventos onchange y keydown pero no consigo el efecto deseado
> (o no ser ver cómo).
>
> ¿Podeis darme alguna pista a seguir?
>
> Saludos y gracias,
> José Luis Capel
>
>
--
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

Browse: impedir que se posicionen en una fila

Mensaje por jose.luis »

Xevi,
Funciona de maravilla. Muchí­simas gracias.
Saludos,
José Luis Capel
PD: ahora probaré esa técnica para las filas.
"Xevi" <xevicomas@terra.es> escribió en el mensaje news:[email=44bd3014@news.xailer.com...]44bd3014@news.xailer.com...[/email]
José Luis,
Yo lo estoy utilizando en un Browse de 7 columnas, que me resulta IMPRESCINDIBLE que se posicione en la columna 3 en un caso determinado...
En OnChange del Browse
METHOD Browse2Change( oSender, lBookMarkChanged ) CLASS TFrmORAlbarans
If ::oBrowse2:nColSel # 3
//Desactivo el evento por si realiza algunas operaciones mas de la cuenta
::oBrowse2:OnChange := Nil
::oBrowse2:SelectCol(3)
::oBrowse2:OnChange := "Browse2Change"
Else
...
EndIf
...
Return Nil
Sólo un pequeño destello de cambio de columna si se mantiene pulsado premanentemente las teclas Izq. o Der.
Pero me funciona perfectamente
Un Saludo,
Xevi.
"José Luis Capel" <jose.luis@iaicom.com> ha escrit al missatge del grup de discussió: 44bcb3be$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> Me gustarí­a hacer lo siguiente:
>
> Un arraybrowse con 4 columnas y 3 filas. nMarqueeStyle := bmSOLIDCELL y
> para cada columna nEditType := beGET.
>
> Este browse es estático en cuanto a filas y columnas.
>
> Las dos primeras filas contiene información inalterable. La última fila se
> utiliza para entrar datos.
>
> Quisiera que el usuario NO pudiera acceder a las dos primeras filas ni con
> el ratón ni con el teclado. Es decir, la fila activa sea siempre la
> tercera.
>
> He mirado los eventos onchange y keydown pero no consigo el efecto deseado
> (o no ser ver cómo).
>
> ¿Podeis darme alguna pista a seguir?
>
> Saludos y gracias,
> José Luis Capel
>
>
--
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

Browse: impedir que se posicionen en una fila

Mensaje por Xevi »

José Luis,
Para las filas... creo que así­ podrí­a funcionarte...
METHOD Browse2Change( oSender, lBookMarkChanged ) CLASS TFrmORAlbarans
If ::oBrowse2:nArrayAt <3
//Desactivo el evento por si realiza algunas operaciones mas de la cuenta
::oBrowse2:OnChange := Nil
::oBrowse2:nArrayAt := 3
::oBrowse2:Refresh()
::oBrowse2:OnChange := "Browse2Change"
Else
...
EndIf
....
Return Nil
Un Saludo,
Xevi.
"José Luis Capel" <jose.luis@iaicom.com> ha escrit al missatge del grup de discussió: [email=44bdf0ed@news.xailer.com...]44bdf0ed@news.xailer.com...[/email]
Xevi,
Funciona de maravilla. Muchí­simas gracias.
Saludos,
José Luis Capel
PD: ahora probaré esa técnica para las filas.
"Xevi" <xevicomas@terra.es> escribió en el mensaje news:[email=44bd3014@news.xailer.com...]44bd3014@news.xailer.com...[/email]
José Luis,
Yo lo estoy utilizando en un Browse de 7 columnas, que me resulta IMPRESCINDIBLE que se posicione en la columna 3 en un caso determinado...
En OnChange del Browse
METHOD Browse2Change( oSender, lBookMarkChanged ) CLASS TFrmORAlbarans
If ::oBrowse2:nColSel # 3
//Desactivo el evento por si realiza algunas operaciones mas de la cuenta
::oBrowse2:OnChange := Nil
::oBrowse2:SelectCol(3)
::oBrowse2:OnChange := "Browse2Change"
Else
...
EndIf
...
Return Nil
Sólo un pequeño destello de cambio de columna si se mantiene pulsado premanentemente las teclas Izq. o Der.
Pero me funciona perfectamente
Un Saludo,
Xevi.
"José Luis Capel" <jose.luis@iaicom.com> ha escrit al missatge del grup de discussió: 44bcb3be$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> Me gustarí­a hacer lo siguiente:
>
> Un arraybrowse con 4 columnas y 3 filas. nMarqueeStyle := bmSOLIDCELL y
> para cada columna nEditType := beGET.
>
> Este browse es estático en cuanto a filas y columnas.
>
> Las dos primeras filas contiene información inalterable. La última fila se
> utiliza para entrar datos.
>
> Quisiera que el usuario NO pudiera acceder a las dos primeras filas ni con
> el ratón ni con el teclado. Es decir, la fila activa sea siempre la
> tercera.
>
> He mirado los eventos onchange y keydown pero no consigo el efecto deseado
> (o no ser ver cómo).
>
> ¿Podeis darme alguna pista a seguir?
>
> Saludos y gracias,
> José Luis Capel
>
>
--
Responder