Hiho.
bin jetzt neu in Delphi und hab folgendes Problem.
Ich hab ein Programm das Daten aus einer Datenbank anzeigt.
Das Ganze ist so gestaltet dass ich 1 Anforderungsfenster habe das x Datenfenster aufmacht.
Jedes Datenfenster hat dabei 1 Fred der die Daten liest.
Jetzt habe ich das Problem, dass das Datenfenster den Fred kennen muss (um ihn zu starten, abzufragen, etc) und der Thread muss das Datenfenster kennen (für die Darstellung).
Wie bekomme ich das aber in der Deklaration hin, denn wenn ich erst den Thread und dann das Fenster definiere kennt der Fred logischerweise die Fensterklasse nicht und umgekehrt kennt das Fenster den Fred nicht.
Sprich Variante/Fehler 1:
Delphi-Quellcode:
class TDataReader = class(TThread);
// ...
public:
display: TfrmData; // hier kennt er das Fenster logischerweise nicht
class TfrmData = class(TForm);
// ...
private:
dataReader: TDataReader;
Variante / Fehler 2:
Delphi-Quellcode:
class TfrmData = class(TForm);
// ...
private:
dataReader: TDataReader; // hier kennt er logischerweise den Fred nicht
class TDataReader = class(TThread);
// ...
public:
display: TfrmData;
Ich habe versucht, das Problem zu umgehen indem ich im Fred "display" nicht als "TfrmData" sondern als Typ "TForm" deklariere.
Dann wollte ich während der Verarbeitung das Ganze umparsen, aber dann bekomme ich die Fehlermeldung, TForm sei nich mit TfrmData kompatibel.
Hat jemand eine Idee, wie ich das Problem lösen kann?
Danke im Voraus
cu Patrick