Einzelnen Beitrag anzeigen

hugo1990

Registriert seit: 27. Dez 2006
166 Beiträge
 
Turbo Delphi für Win32
 
#14

Re: Wert aus Klasse nicht verfügbar

  Alt 24. Dez 2009, 13:17
Ich würds gern testen, aber leider fehlen mir diese beiden Units:
dirs, HTMLColorConversions

Edit:
beim Codeüberfliegen habe ich den Fehler gefunden:

Delphi-Quellcode:
procedure TMainForm.ReceiveAppMessage(var Msg: TWMCopyData);
begin
  t4r.ReceiveAppMessage(Msg);
end;
Du stellst nicht sicher, dass t4r an dieser Stelle bereits erzeugt wurde. Wenn jetzt eine Nachricht empfangen wird, bevor t4r erzeugt wurde, gibt es eine Zugriffsverletzung.

Das hier sollte Abhilfe schaffen:
Delphi-Quellcode:
procedure TMainForm.ReceiveAppMessage(var Msg: TWMCopyData);
begin
  if t4r <> nil then
    t4r.ReceiveAppMessage(Msg);
end;
oder

Delphi-Quellcode:
procedure TMainForm.ReceiveAppMessage(var Msg: TWMCopyData);
begin
  if t4r = nil then
  begin
    t4r := Tt4r.Create(MainForm.Caption);
    t4r.ReceiveAppMessage(Msg);
  end;
end;
Edit2:
Außerdem solltest du das folgende nicht im OnShow sondern im OnCreate aufrufen:
Delphi-Quellcode:
  t4r := Tt4r.Create(MainForm.Caption);
  t4r.InitForm;
  Mit Zitat antworten Zitat