Paint de un Windows Form

16/08/2003 - 22:12 por Miguel | Informe spam
Hola:

Me gustaría saber si os habeís fijado en la carga de los formularios con
varios controles (bastantes si es posible), una ficha maestra o algo por el
estilo dentro de un MDI. En la carga del formulario, sin escribirle código
en el constructor ni en eventos de pintado, el formulario hijo hace unos
efectos "poco elegantes" en el momento del pintado del formulario, es decir,
no realiza un PANTALLAZO como se puede observar en otras aplicaciones dentro
del mismo entorno (ordenador, S.O., etc). En cualquier caso, el ordenador de
testeo se trata de unas características nada despreciables (PIV 2,4, 1Gb,
128Mb Video, ).

En una de las últimas pruebas, lo único que se le ha puesto al formulario
hijo es la propiedad:
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;

la carga se hace:

if( _formPacientes == null )

_formPacientes = new FormPacientes();

_formPacientes.MdiParent = this;

_formPacientes.Show();

_formPacientes.BringToFront();

Pues aún con este, las "etapas" de carga del formulario son visibles al
usuario, incluso he podido capturar la imagen "a medio cargar" con una
impresión de pantalla. (disponible si la quereís)



Bueno pues me gustaría saber si os pasa igual y en ese caso, si conoceís
algún método para eliminar este efecto.

Gracias
 

Leer las respuestas

#1 Octavio Hernandez
17/08/2003 - 13:50 | Informe spam
Miguel,

Activa la doble buferización y otras características avanzadas de los
formularios, que pueden ayudar en esto (a costa de consumir más memoria).
Por ejemplo, prueba esto en el constructor de la clase hija:

this.SetStyle(ControlStyles.DoubleBuffer | ControlStyles.UserPaint |
ControlStyles.AllPaintingInWmPaint, true);
this.UpdateStyles();

Saludos,

Octavio

"Miguel" escribió en el mensaje
news:%
Hola:

Me gustaría saber si os habeís fijado en la carga de los formularios


con
varios controles (bastantes si es posible), una ficha maestra o algo por


el
estilo dentro de un MDI. En la carga del formulario, sin escribirle código
en el constructor ni en eventos de pintado, el formulario hijo hace unos
efectos "poco elegantes" en el momento del pintado del formulario, es


decir,
no realiza un PANTALLAZO como se puede observar en otras aplicaciones


dentro
del mismo entorno (ordenador, S.O., etc). En cualquier caso, el ordenador


de
testeo se trata de unas características nada despreciables (PIV 2,4, 1Gb,
128Mb Video, ).

En una de las últimas pruebas, lo único que se le ha puesto al formulario
hijo es la propiedad:
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;

la carga se hace:

if( _formPacientes == null )

_formPacientes = new FormPacientes();

_formPacientes.MdiParent = this;

_formPacientes.Show();

_formPacientes.BringToFront();

Pues aún con este, las "etapas" de carga del formulario son visibles al
usuario, incluso he podido capturar la imagen "a medio cargar" con una
impresión de pantalla. (disponible si la quereís)



Bueno pues me gustaría saber si os pasa igual y en ese caso, si conoceís
algún método para eliminar este efecto.

Gracias


Preguntas similares