Einzelnen Beitrag anzeigen

Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.537 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Zugriff auf Zelle in TStringGrid (FMX) XE6

  Alt 24. Apr 2014, 19:08
Die Funktion hat sich (leider) geändert, ist quasi totgelegt, weil ein Wert nur zurückgeliefert wird, wenn die Zelle in der selektierten Zeile liegt:

Delphi-Quellcode:
function TColumn.CellControlByRow(Row: Integer): TStyledControl;
begin
  if (Grid <> nil) and Grid.IsSelected(Row) then
    Result := CellControl
  else
    Result := nil;
end;
Alte Version:
Delphi-Quellcode:
function TColumn.CellControlByRow(Row: Integer): TStyledControl;
var
  i: Integer;
  LGrid : TCustomGrid;
begin
  LGrid := Grid;
  Result := nil;
  if not Assigned(LGrid) then
    Exit;

  for i := 0 to High(FCellControls) do
    if (FCellControls[i].Visible) and
      (Trunc(StringToPoint(FCellControls[i].TagString).Y) = Row) then
    begin
      Result := FCellControls[i];
      Exit;
    end;
end;
Ich werde mal nach einem Ersatz suchen...

Übrigens ist das nicht die einzige Änderung an den Grids. Bei StringGrids sind mir nichts dir nichts die Onpaint und Onpainting-Events für die TStringColumns weggefallen.

Ich hatte mich glaube ich zu Recht dafür entschieden, mit dem TMS-Grid zu arbeiten, solche Brüche habe ich dort Gott sei Dank noch nicht erlebt.

Geändert von Harry Stahl (24. Apr 2014 um 19:16 Uhr)
  Mit Zitat antworten Zitat