Página 1 de 1

lVisible y lRedraw

Publicado: Vie Dic 15, 2006 5:21 pm
por jose.luis
Hola,
Bajo mi entender:
Si lVisible := .F. significa que el control no se pinta y además ignora todo
mensaje de repintado. Si esto es así... entonces esta combinación:
oControl:lVisible := .F.
oControl:lRedraw := .T.
Hace que vuelva a aparecer el control mientras que lVisible sigue siendo
..F.
Habría que corregir este comportamiento.... ¿verdad?
Saludos,
José Luis Capel
PD: os dejo un ejemplo.


Attached files test3.zip (2.4 KB)Â

lVisible y lRedraw

Publicado: Lun Dic 18, 2006 1:50 pm
por jose.luis
Hola,
¿Alguna idea o sugerencia sobre este tema?
Saludos y gracias,
José Luis Capel
"José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
news:4582cb63$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> Bajo mi entender:
> Si lVisible := .F. significa que el control no se pinta y además ignora
> todo mensaje de repintado. Si esto es así... entonces esta combinación:
>
> oControl:lVisible := .F.
> oControl:lRedraw := .T.
>
> Hace que vuelva a aparecer el control mientras que lVisible sigue siendo
> .F.
>
> Habría que corregir este comportamiento.... ¿verdad?
>
> Saludos,
> José Luis Capel
> PD: os dejo un ejemplo.
>
>

lVisible y lRedraw

Publicado: Mié Dic 20, 2006 7:39 am
por Francisco Sanchez
Jose luis creo que lVisible hace que el control sea o no visible
simplemente, mientras que lredraw tiene otro comportamiento, si no recuerdo
mal - si estoy equivocado me corregiran -. lRedraw hace que no se repinte,
que creo no es lo mismo que visible o no visible.
Ahi lo que puede estar pasando es que lredraw anula el lvisible := .F..
Un saludo
"José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
news:[email=45868e50@news.xailer.com...]45868e50@news.xailer.com...[/email]
> Hola,
>
> ¿Alguna idea o sugerencia sobre este tema?
>
> Saludos y gracias,
> José Luis Capel
>
>
> "José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
> news:4582cb63$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Hola,
>>
>> Bajo mi entender:
>> Si lVisible := .F. significa que el control no se pinta y además ignora
>> todo mensaje de repintado. Si esto es así... entonces esta combinación:
>>
>> oControl:lVisible := .F.
>> oControl:lRedraw := .T.
>>
>> Hace que vuelva a aparecer el control mientras que lVisible sigue siendo
>> .F.
>>
>> Habría que corregir este comportamiento.... ¿verdad?
>>
>> Saludos,
>> José Luis Capel
>> PD: os dejo un ejemplo.
>>
>>
>
>

lVisible y lRedraw

Publicado: Mié Dic 20, 2006 7:42 am
por Francisco Sanchez
perdon pero se me fue el raton, dedo rapido, jejejeje. continuando con lo
anterior, yo utilizo el lRedraw para repintar un treeview, pero claro por
defecto el trreeview lo tengo lvisible a .T.. Mientras estoy recargando el
treeview, para que no se note en pantalla que lo estoy haciendo, pongo el
lredraw - si no recuerdo mal que hablo de cabeza y puedo estar metiendo la
pata - a .F. y cuando he terminado lo pongo a .T. para repintarlo.
Pero el lVisible := .F. lo que haria seria ocultar el control que no se
viera el control en si.
Un saludo
"FRANCISCO SANCHEZ" <francisco@softwaretotal.biz> escribió en el mensaje
news:4588daa1$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Jose luis creo que lVisible hace que el control sea o no visible
> simplemente, mientras que lredraw tiene otro comportamiento, si no
> recuerdo mal - si estoy equivocado me corregiran -. lRedraw hace que no se
> repinte, que creo no es lo mismo que visible o no visible.
>
> Ahi lo que puede estar pasando es que lredraw anula el lvisible := .F..
>
> Un saludo
>
> "José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
> news:[email=45868e50@news.xailer.com...]45868e50@news.xailer.com...[/email]
>> Hola,
>>
>> ¿Alguna idea o sugerencia sobre este tema?
>>
>> Saludos y gracias,
>> José Luis Capel
>>
>>
>> "José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
>> news:4582cb63$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>>> Hola,
>>>
>>> Bajo mi entender:
>>> Si lVisible := .F. significa que el control no se pinta y además ignora
>>> todo mensaje de repintado. Si esto es así... entonces esta combinación:
>>>
>>> oControl:lVisible := .F.
>>> oControl:lRedraw := .T.
>>>
>>> Hace que vuelva a aparecer el control mientras que lVisible sigue
>>> siendo .F.
>>>
>>> Habría que corregir este comportamiento.... ¿verdad?
>>>
>>> Saludos,
>>> José Luis Capel
>>> PD: os dejo un ejemplo.
>>>
>>>
>>
>>
>
>

lVisible y lRedraw

Publicado: Mié Dic 20, 2006 12:39 pm
por jose.luis
Paco,
Lo que yo entiendo es que si lVisible := .F. entonces _NUNCA_ debe verse ese
control. Y en el ejemplo que he dejado lRedraw provoca que se haga visible
el control aunque su propiedad lVisible sea (y sigue siendo) .F.
Saludos y gracias,
José Luis Capel
"FRANCISCO SANCHEZ" <francisco@softwaretotal.biz> escribió en el mensaje
news:4588daa1$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Jose luis creo que lVisible hace que el control sea o no visible
> simplemente, mientras que lredraw tiene otro comportamiento, si no
> recuerdo mal - si estoy equivocado me corregiran -. lRedraw hace que no se
> repinte, que creo no es lo mismo que visible o no visible.
>
> Ahi lo que puede estar pasando es que lredraw anula el lvisible := .F..
>
> Un saludo
>
> "José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
> news:[email=45868e50@news.xailer.com...]45868e50@news.xailer.com...[/email]
>> Hola,
>>
>> ¿Alguna idea o sugerencia sobre este tema?
>>
>> Saludos y gracias,
>> José Luis Capel
>>
>>
>> "José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
>> news:4582cb63$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>>> Hola,
>>>
>>> Bajo mi entender:
>>> Si lVisible := .F. significa que el control no se pinta y además ignora
>>> todo mensaje de repintado. Si esto es así... entonces esta combinación:
>>>
>>> oControl:lVisible := .F.
>>> oControl:lRedraw := .T.
>>>
>>> Hace que vuelva a aparecer el control mientras que lVisible sigue
>>> siendo .F.
>>>
>>> Habría que corregir este comportamiento.... ¿verdad?
>>>
>>> Saludos,
>>> José Luis Capel
>>> PD: os dejo un ejemplo.
>>>
>>>
>>
>>
>
>

lVisible y lRedraw

Publicado: Mié Dic 20, 2006 2:16 pm
por ignacio
José Luis,
Mi entender es igual que tu entender pero distinto del entender de los
señores de Microsoft. No estoy seguro de que debamos cambiar el
comportamiento que marca Windows. Puedes comprobar lo que te digo
simplemente mandando este mensaje al control oculto:
oControl:SendMsg( WM_SETREDRAW, .T. )
En cualquier caso no tiene mucho sentido poner lRedraw a verdadero cuando el
control esta oculto.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
news:4582cb63$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> Bajo mi entender:
> Si lVisible := .F. significa que el control no se pinta y además ignora
> todo mensaje de repintado. Si esto es así... entonces esta combinación:
>
> oControl:lVisible := .F.
> oControl:lRedraw := .T.
>
> Hace que vuelva a aparecer el control mientras que lVisible sigue siendo
> .F.
>
> Habría que corregir este comportamiento.... ¿verdad?
>
> Saludos,
> José Luis Capel
> PD: os dejo un ejemplo.
>
>