GDI y DobleBuffer

03/10/2006 - 10:41 por news.microsofto.com | Informe spam
Estoy haciendo un aplicación con gráficos muy sencillos con GDI.

El problema es que al mover algunos objetos repinta toda la venta con lo que
se ve un efecto desagradable ( flickering(?) me parece que se llama).

¿Sabéis alguna manera de simular la técnica del doble buffer sobre GDI para
evitar este efecto?

Otra posibilidad es pintar sólo el rectángulo sobre el que ha habido
movimiento (InvalidateRect, etc..) pero creo que la solución del doble
buffer es mejor.

No quiero utilizar DirectX, quiero seguir con GDI.

Gracias.

Preguntas similare

Leer las respuestas

#1 Alejandro Mezcua
03/10/2006 - 10:41 | Informe spam
Hola.

Aquí tienes un ejemplo

http://www.bobpowell.net/doublebuffer.htm

Un saludo,

Alejandro Mezcua
MVP .NET Compact Framework
http://www.byteabyte.net/

Mostrar la cita
#2 RFOG
03/10/2006 - 11:06 | Informe spam
Hash: SHA1

news.microsofto.com wrote:
Mostrar la cita
El flickering lo tienes porque el sistema está pintando el background, y
el doble buffer lo hace directamente la ficha si así se lo indicas:

Pon esto en el constructor, después de la llamada a inicializar los
componentes:

SetStyle(ControlStyles.DoubleBuffer|ControlStyles.AllPaintingInWmPaint,true);



ÿþV
Ads by Google
Search Busqueda sugerida