FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ayuda con codigo ondraw
muy buenas tardes querido club fueron muchas las veces que me colaboraron pero ahora vengo con una pregunta un poco mas especifica veran tengo un codigo funciona bien es el siguiente:
Código:
procedure TFInventario.ProductosDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var Grid : TStringGrid; Texto : String; ColorCelda : TColor ; begin Grid := TStringGrid(Sender); if (Arow = Fila) and ( Fila > 0 ) then ColorCelda := $00C4EFFF else if (ARow < Grid.FixedRows) or (ACol < Grid.FixedCols) then ColorCelda := $002D96FF else ColorCelda := clWhite ; if (ARow < Grid.FixedRows) or (ACol < Grid.FixedCols) then begin Grid.Canvas.Brush.Color := ColorCelda ; Grid.Canvas.Font.Style := [fsBold] ; Grid.Canvas.FillRect(Rect); Texto := Grid.Cells[ACol,ARow]; DrawText( Grid.Canvas.Handle, PChar(Texto), StrLen(PChar(Texto)), Rect, DT_CENTER ) ; end else begin Grid.Canvas.Brush.Color := ColorCelda; Grid.Canvas.Font.Style := [] ; Grid.Canvas.FillRect(Rect); Texto := Grid.Cells[ACol,ARow]; DrawText( Grid.Canvas.Handle, PChar(Texto), StrLen(PChar(Texto)), Rect, DT_LEFT ) ; end ; end; |
#2
|
||||
|
||||
hmm a primera vista parece un problema con la variable global por que no intentas simplemente usar Grid.Row y verificar si el grid está seleccionado con Focused?
__________________
self.free; |
#3
|
|||
|
|||
hay que verguenza ya solucione el problema en verdad me da mucha pena haberlos molestado en vano, pero para aclarar lo que realizaba el codigo es :
en un grid en el evento OnSelectCell tomaba el valor Fila := ARow ese es el valor de la fila que seleccione al hacer click en el despues llamaba al repaint del grid con Grid.Repaint ; al hacer esto se ejecutaba el codigo que puse antes y lo que hace es primero le da color a las fixed cells del grid pone estilos al font del grid y por ultimo la fila enla que hice click antes la pinta de otro color y todo se soluciono al aumentar Grid.Canvas.Font.Color := clMaroon ; en el ultimo else muchas gracias por su ayuda y lamento las molestias |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ayuda en un código | kbaby | Varios | 75 | 18-06-2008 14:08:17 |
ayuda con este codigo | kurono | Varios | 4 | 13-06-2008 01:03:29 |
Ayuda con código. | wofox | Varios | 6 | 11-12-2007 00:16:21 |
Ayuda con un codigo | JoNieve | C++ Builder | 0 | 21-04-2007 12:27:33 |
Ayuda con error en codigo :-( | jorgegetafe | Varios | 6 | 07-02-2007 19:29:04 |
|