Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Inkompatible Typen TFieldGetTextevent und String (https://www.delphipraxis.net/121937-inkompatible-typen-tfieldgettextevent-und-string.html)

Barny 7. Okt 2008 09:38

Datenbank: Paradox • Version: 7 • Zugriff über: BDE, SQL

Inkompatible Typen TFieldGetTextevent und String
 
Ich will die Spaltenanzeige eines TDBGrids zur Laufzeit erzeugen.

Folgendes funktioniert bereits (stark vereinfacht):

Code:
dbgrdTest.Columns.Add;
dbgrdTest.Columns[0].FieldName := 'Datenbankname';
dbgrdTest.Columns[0].Title.Caption := 'Anzeigename';
dbgrdTest.Columns[0].Width := 100;
Jetzt will ich zur Laufzeit dieser Spalte ein OnGetText-Ereignis zuweisen um aus dem Datenbank-Wert z.B. 'U' die Anzeige 'Erledigung durch Übernahme' im Grid zu machen. Die procedure hierzu sieht wie folgt aus:

Code:
procedure TDataModulQuerySteuernummer.ErledigungVLGetText(Sender: TField;
  var Text: String; DisplayText: Boolean);
begin
  Text := 'Erledigung durch Übernahme';
  DisplayText := True;
end;
Mein Versuch
Code:
dbgrdTest.Columns[0].Field.OnGetText := 'DataModulQuerySteuernummer.ErledigungVLGetText';
scheitert mit dem Fehlerhinweis

Inkompatible Typen: 'TFieldGetTextEvent' und 'String'

Mir ist jetzt nicht klar, wie ich der Spalte das OnGetText-Ereignis zuweisen kann.
Mit meinem Wissen komme ich nicht weiter. Wer kann mir einen Lösungsweg aufzeichnen?

Gruss
Barny

DeddyH 7. Okt 2008 09:41

Re: Inkompatible Typen TFieldGetTextevent und String
 
Sofern beide Methoden aufrufkompatibel sind:
Delphi-Quellcode:
dbgrdTest.Columns[0].Field.OnGetText := DataModulQuerySteuernummer.ErledigungVLGetText;
Einfach die Hochkommata weglassen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz