Ver Mensaje Individual
  #2  
Antiguo 07-02-2018
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.

Nunca he usado los componentes TMS, pero de acuerdo a esta guía, TMS TAdvStringGrid DEVELOPERS GUIDE, el evento OnGetCellColor está declarado así:
Código Delphi [-]
 TGridColorEvent = procedure (Sender:TObject; ARow, ACol:Integer; AState:TGridDrawState;
   ABrush:TBrush; AFont:TFont) of object;
Entonces creo que para asignarle tu propio procedimiento, bastaría con hacer algo similar a esto:
Código Delphi [-]
...

type
  TForm1 = class(TForm)
    AdvStringGrid1 : TAdvStringGrid;
    procedure FormCreate(Sender: TObject);
    ...
  private
    procedure MyGetCell(Sender:TObject; ARow, ACol:Integer; AState:TGridDrawState; ABrush:TBrush; AFont:TFont);
    ...
  public
    ...
  end;
  
...

implementation

procedure TForm1.FormCreate(Sender: TObject);
begin
  AdvStringGrid1.OnGetCellCol := MyGetCell;
end;

procedure TForm1.MyGetCell(Sender:TObject;ARow, ACol:Integer; AState:TGridDrawState; ABrush:TBrush; AFont:TFont);
var
  sg: TAdvStringGrid;
begin
  sg := AdvStringGrid1;
  ...  // operaciones pertinentes
end;
...
Aunque, en base, sería lo mismo usar la declaración original...

Saludos
__________________
Daniel Didriksen

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