Einzelnen Beitrag anzeigen

eddie11

Registriert seit: 8. Nov 2005
Ort: Zossen bei Berlin
236 Beiträge
 
Delphi XE8 Professional
 
#1

Zugriff auf Zelle in TStringGrid (FMX) XE6

  Alt 24. Apr 2014, 12:00
Hi allerseits,

bis einschließlich XE5 konnte ich mit CellControlByRow auf eine einzelne Zelle einer TStringColumn zugreifen.
Das habe ich getan, um z.B. die Textfarbe einer Zelle zu ändern.

Delphi-Quellcode:
type
  TColumnAccess = class( TColumn )
  end;

procedure TForm1.Button2Click(Sender: TObject);
var
  Col, Row: Integer;
  CellCtrl: TStyledControl;
begin
  for Col := 0 to StringGrid1.ColumnCount - 1 do begin
    for Row := 0 to StringGrid1.RowCount - 1 do begin
      CellCtrl := TColumnAccess( StringGrid1.Columns[ Col ] ).CellControlByRow( Row );
      if ( CellCtrl <> nil ) and ( CellCtrl is TTextCell ) then begin
        TTextCell( CellCtrl ).StyledSettings := [];
        TTextCell( CellCtrl ).FontColor := claBlueViolet;
        TTextCell( CellCtrl ).Font.Family := 'Times New Roman';
        TTextCell( CellCtrl ).Font.Style := [ TFontStyle.fsBold ];
        TTextCell( CellCtrl ).Font.Size := 14;
      end;
    end;
  end;
end;
Das funzt jetzt mit XE6 nicht mehr. Anscheinend gibt CellControlByRow nicht mehr die gewünschte Zelle zurück.
Hat jemend von Euch ein ähnliches Problem und evtl. schon eine Lösung gefunden?
Edgar Leifeld
Liebe Grüße aus Zossen bei Berlin

Die Kontramedüse ist verdrupelt!!!
  Mit Zitat antworten Zitat