Ver Mensaje Individual
  #4  
Antiguo 12-10-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola JXJ.

Si no te entiendo mál, una manera puede ser almacenar en dos cadenas (asignables de donde gustes) los valores de columnas y filas para hacer la posterior evaluación en el evento OnDrawCell.

Algo como por ejemplo:
Código Delphi [-]
... 
{ A fines del ejemplo les asigno valor debajo,
    vos podrías tomar los valores desde un archivo, etc }
var 
  ColStr: string = '2,3,5';     // Columnas sobre las que se evalua
  RowStr: string = '1,2,3,4,5'; // Filas sobre las que se evalua

...
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var
  R: TRect;
  v: Double;
begin
  with TStringGrid(Sender) do
  begin
    if (Pos(IntToStr(ACol), ColStr) > 0) and (Pos(IntToStr(ARow), RowStr) > 0) 
       and TryStrToFloat(Cells[ACol,ARow], v) then
    begin
      if (v = 0) then    // v = 0 : Sin stock
      begin
        Canvas.Brush.Color:= clRed;
        Canvas.Font.Color:= clWhite;
      end
      else      // hay stock
      begin
        Canvas.Brush.Color:= clLime;
        Canvas.Font.Color:= clBlack;
      end;
      Canvas.FillRect(Rect);
      Canvas.TextOut(Rect.Left+1, Rect.Top+1, Cells[ACol,ARow]);
    end;
  end;
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 12-10-2011 a las 23:11:22.
Responder Con Cita