Hallo Leute!
Um in meiner Anwendung möglichst einfach mit Frames arbeiten zu können, habe ich mir eine Unterklasse von TFrame abgeleitet:
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| type TMFrame = class(TFrame) public procedure Initialize; virtual; abstract; procedure Finalize; virtual; abstract; end; |
Nun lege ich (mit dem Delphi eigenen Menüpunkt) einen neuen Frame an, sodass ich ihn auch visuell bearbeiten kann und ändere einfach
Delphi-Quelltext
1:
| TFrame1 = class(TFrame) |
in
Delphi-Quelltext
1:
| TFrame1 = class(TMFrame) |
um. Allerdings führt das zu folgender "Katastrophe": Speichere ich das Projekt ab, schließe es und öffne es dann wieder (bzw. gehe ich beim Frame auf "Als Text anzeigen" und dann wieder mit Alt+F12 auf "Formular anzeigen") kommt: "Fehler beim Lesen von frame1.TabOrder: Eigenschaft TabOrder existiert nicht.. Den Fehler [...]". Das gleiche auch bei TabStop. Warum? Diese Eigenschaften muss es doch bei TMFrame genauso geben, da von TFrame abgeleitet und nur 2 Prozeduren hinzugefügt.
Wenn ich die beiden Eigenschaften entferne, gibt es ein chaos. Der Frame passt nicht mehr richtig und im Formular-Editor wird ein Rahmen um ihn herum gezeichnet. (HÄ???)
Woran liegt das? Was mache ich falsch? Darf ich in dieser Art und weise einen Frame nicht ableiten?
thx
Alstar