Ver Mensaje Individual
  #1  
Antiguo 17-09-2008
Avatar de gatosoft
[gatosoft] gatosoft is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Bogotá, Colombia
Posts: 835
Reputación: 24
gatosoft Va camino a la fama
Hola Memo... Creo haber tenido el mismo problema.... Tu das DobleClick en la grilla pero el color no cambia inmediatamente... Cierto?

Pues en tu caso yo lo resolvería poniendo en el evento OnDblClick la sentencia:

Código:
DBGrid1.Repaint;
Este a su vez llama al OnDrawColumGrid y hace el trabajo de pintura... Obviamente para que te coloree la casilla, debes cambiar la condición en la grilla o tabla antes de llamar al RePaint...

Bueno otra técnica para lograr un repaint es llamar al método INVALIDATE:

<TControl>.Invalidate;

Este se aplica bastante cuando estas creando tus propios componentes... Si algo ha cambiado en el componente tu puedes llamr al Invalidate en lugar de esperar que Windows lo haga cuando detecte un cambio...

Saludos,
Responder Con Cita