Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Problem beim Öffnen einer neuen Form
arnes - Fr 28.11.08 18:09
Titel: Problem beim Öffnen einer neuen Form
hey
ich will während der Lauftzeit über eine Anwendung eine neue Form öffnen.
Bis vor kurzem war das auch kein Problem aber auf einmal kommt bei jedem
Versuch die Form zu öffnen die Fehlermeldung:
"Im Project blabla.exe ist eine Exception mit der Meldung 'zugriffsverletzung bei Adresse
00449B7A in Modul 'blabla.exe'. Lesen von Adresse 00000358' aufgetreten "
Quellcode der Form2 die über Form1 geöffnet wird:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27:
| unit PasswortAbfrage;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type TForm2 = class(TForm) Button1: TButton; Label1: TLabel; private public end;
var Form2: TForm2;
implementation
{$R *.dfm}
end. |
Quelltext der Form1
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31:
| unit dialogTest;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, PasswortAbfrage;
type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private public end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); begin Form2.show; end;
end. |
ich hab keine Ahnung woran das liegen könnte
gruß arnes
jaenicke - Fr 28.11.08 18:21
Wird das zweite Formular denn im Projektquelltext (Projekt --> Quelltext anzeigen) überhaupt erzeugt? Einstellen kannst du das auch unter Projekt --> Optionen --> Formulare. Wenn du das Formular nicht selbst erstellst, dann muss es in der Liste der automatisch erstellten Formulare stehen.
Ob neu erstellte Formulare automatisch erstellt werden sollen kannst du in den Delphi Optionen unter Tools --> Optionen einstellen, ich nehme an, das hast du dort deaktiviert.
Du kannst das Formular aber auch erst wenn es benötigt wird vor dem Show manuell erzeugen.
daywalker0086 - Fr 28.11.08 18:23
Kann es daran liegen:
Delphi-Quelltext
1: 2: 3: 4:
| implementation
uses unitdialogtest, Passwortabfrage; {$R *.DFM} |
arnes - Fr 28.11.08 20:00
veielen Dank
hab garnicht gewusst , dass man die vorher erzeugen muss.
ich habe jetzt ein anderes Project , welches genau die gleiche
PasswortAbfrage nutzt. Ich wollte diese über Projekt -> Optionen -> Formulare
einbinden aber es steht nur die Form1 zur auswahl.
wie bekomme ich dort jetzt die Passwortabfrage rein?
gruß arnes
jaenicke - Fr 28.11.08 20:04
Da musst du die Unit aber vorher in dein Projekt einbinden. Oben hast du einen Knopf mit einem +, außerdem müsste unter Projekt der Eintrag "Zum Projekt hinzufügen" oder so sein.
Damit fügst du die Unit in deine Projektdatei ein und dann ist das Formular auch verfügbar. Zusätzlich muss diese dann beim Aufruf auch verwendet werden, das kannst du entweder automatisch machen lassen indem du den Namen des anderen Formulars schreibst und kompilierst, du kannst die Unit aber auch manuell mit Datei --> Unit verwenden in die uses-Klausel einfügen lassen.
arnes - So 30.11.08 20:23
vielen Dank
jetzt funktioniert alles wunderbar
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!