Einzelnen Beitrag anzeigen

sintronic86

Registriert seit: 7. Dez 2009
Ort: Barsinghausen
90 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

AW: TScrollBox BUG????

  Alt 3. Apr 2014, 13:55
Ich habe den Fehler gefunden. Und ich könnte mich so ärgern, weil es eigentlich ein Anfängerfehler ist :


Das OnCreate meiner Komponent sieht so aus (Kurzfassung):

Delphi-Quellcode:
constructor TTest.Create(...);
begin
  inherited Create(AOwner);

  Parent := ...
  Align := ...


  Edit1 := TEdit.Create
  with Edit1 do begin
    Parent := Self;
    ...
  end;

  Edit2 := TEdit.Create
  with Edit2 do begin
    Parent := Self;
    ...
  end;

  Edit3 := TEdit.Create
  with Edit3 do begin
    Parent := Self;
    ...
  end;

  ...
end;
Ich habe das OnPaint meiner Komponente überschrieben.
Innerhalb des OnPaint habe ich einen Zugriff auf alle beinhalteten Komponenten gemacht:

Delphi-Quellcode:
Edit1.Left := ...
Edit2.Left := ...
Edit3.Left := ...
Da das OnPaint durch das zuweisen Edit1.Parent := Self ausgelöst wird, gibt es einen Fehler beim Zugriff auf Edit2.Left := ... , welches zu diesem Zeitpunkt noch garnicht existiert.
Wenn ich dafür sorge, dass das OnPaint nicht ausgeführt wird, bevor das OnCreate der Komponente gelaufen ist, läuft alles reibungslos.


Ich danke euch trotzdem allen für eure Bemühungen!
Björn
  Mit Zitat antworten Zitat