TFrame lässt sich nicht mehr öffnen
Moin zusammen,
ich habe etwas Probleme mit einem TFrame unter Delphi 2010. Dieses Frame ist eine Ableitung eines anderen Frames (TfrBase). Wenn ich eine Instanz des Frames erstelle, bekomme ich die Fehlermeldung : Zitat:
Öffne ich die DFM-Datei, so steht auch z.B. ClientHeight drin. Wenn ich alles rauslösche, was in die DFM für ein Frame nicht reingehört, dann kann ich manchmal das Frame wieder normal wie ein Frame behandeln (ein System hab ich darin nicht erkannt). Es funktionert dann auch zur Laufzeit wieder. Aber nach 3-4 Änderungen meckert er wieder und die "falschen" Eigenschaften stehen wieder in der DFM-Datei. Es sind auch noch einige andere Eigenschaften, die dann fälschlicherweise hinzugefügt werden. Alle anderen Frames, die von TfrBase abgeleitet sind, funktionieren wunderbar. Ich kann sie öffnen, bearbeiten, etc. Sie verhalten sich ganz normal. Ich bin mit meinem Latein am Ende. Habt ihr einen Tipp für mich? Danke! PS: Eine Ergänzung noch: Es kommt sogar vor, dass mir dabei die PAS-Datei an einer Stelle mitten im Code einfach abgeschnitten wird. Der Rest fehlt dann einfach, ist einfach weg. |
AW: TFrame lässt sich nicht mehr öffnen
Keine eine Idee dazu? Wilde haltlose Spekulationen werden auch gern entgegengenommen. :-D
|
AW: TFrame lässt sich nicht mehr öffnen
also Spekulation
wie sieht die Deklaration im Projekt aus
Delphi-Quellcode:
Unit3 in 'Unit3.pas' {Frame3: TFrame};
|
AW: TFrame lässt sich nicht mehr öffnen
Spekulatius ist besser, als gar keine Kekse. :D
Sieht eigentlich normal aus:
Delphi-Quellcode:
UfrTouchscreenInfo in 'Source\UfrTouchscreenInfo.pas' {frTouchscreenInfo: TFrame},
auch in der .dproj nichts auffälliges:
Code:
<DCCReference Include="Source\UfrTouchscreenInfo.pas">
<Form>frTouchscreenInfo</Form> <DesignClass>TFrame</DesignClass> </DCCReference> |
AW: TFrame lässt sich nicht mehr öffnen
Hi,
wie wäre es mit: mach ein neues Kind vom Basisframe und kopier den Inhalt des "defekten" ins neue rein, incl. Sourcen und schmeiß das alte Frame weg... Grüße |
AW: TFrame lässt sich nicht mehr öffnen
Mann kann das Problem einfacher lösen: In .dfm von Kind-Form Schlüsselwort "object" am Anfang, soll durch "inherited" ersetzt werden. Ach überfüssigen Proterties wie ClienHight/Width etc. sollten gelöscht werden.
|
AW: TFrame lässt sich nicht mehr öffnen
Hallo,
älterer Thread, selbes Problem. Auch Delphi 2010. Ein im Prinzip noch ganz leeres Projekt. Ein Basis-Frame "TBaseFrame" davon erbt ein TTestFrame. Beide units dazu sind im der Unit des Hauptformulars eingebunden. Und im OnClick eines Buttons einfach:
Delphi-Quellcode:
Es kommt auch der Fehler mit Eigenschaft ClientHeight kann nicht gefunden werden.
var f:TBaseFrame;
begin f:=TTestFrame.Create(self); f.Show; end; Gibt es da mittlerweile nähere Erkenntnisse zu? Ist das ein Bug in Delphi2010? Ich hab vergleichbare Konstrukte in Delphi 6 problemlos im Einsatz und möchte ungern in der .dfm rumfummeln, weil ich keine Ahnung habe, was ich da mache. |
AW: TFrame lässt sich nicht mehr öffnen
Schau auf #6. Das ist der Klassiker wenn man man meint einen Frame eine Ebene in der Hierarchie nach unten zu verfrachten und im Quelltext Tframe austauscht.
|
AW: TFrame lässt sich nicht mehr öffnen
Ja so hab ich das leider gemacht. Ich hab aber #6 probiert und das hat nicht geholfen. Gestern.
Heute hab ich das mit einem Texteditor nochmal gemacht, die IDE war noch "aus", und seitdem geht's. Danke. Ich schmeiß immer alles aus dem Projekt raus ausser der Hauptanwendung. Alle Forms und Frames erzeuge ich dann nur da, wo ich die brauche. Habe erst gerade gemerkt, das mir deswegen mein BaseFrame nicht bei der Neuerstellung eines Frames als Vererbbares Elemet zur Verfügung steht. Werde als Lektion für die Zukunft in solchen Fällen das Basis-Objekt im Projekt belassen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:02 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