Einzelnen Beitrag anzeigen

hhcm

Registriert seit: 12. Feb 2006
Ort: Wegberg
310 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Problem mit TDBAdvGrid (TMS)

  Alt 13. Feb 2019, 13:15
Das funktioniert beim TMS DBGrid so nicht. Das Grid hat in den Events keinen "Cursor" zum Datensatz.
Du kannst dort also nicht auf das Query zugreifen wie es bei anderen Grids möglich ist.

So musst du die Werte/Spalten die du z.B für Berechnungen o.ä brauchst im Grid ablegen und die Daten von dort holen.
Also die Spalte ORT hinzufügen. Wenn du die Spalte nicht brauchst, schaltest du sie mit grid.HideColumn weg.

Delphi-Quellcode:
procedure TBrowseForm.GridDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
 var S:String; Adresse:TAdresse;
begin
  if (Grid.Columns[ACol].FieldName = 'PLZ') then
   begin
     S:= Grid.Cells[Grid.ColumnByFieldName['PLZ'].Index, ARow] + ' ' + Grid.Cells[Grid.ColumnByFieldName['ORT'].Index, ARow];
     Grid.Canvas.TextOut(Rect.Left+2,Rect.Top+2,S);
   end;
end;
Da ich neugierig bin, was soll das eigentlich werden?
Chris
  Mit Zitat antworten Zitat