Hallo zusammen...
schaut euch mal dies an- funzt einwandfrei!
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, Menus, StdCtrls;
type
TForm1 =
class(TForm)
MainMenu1: TMainMenu;
StatusBar1: TStatusBar;
N11: TMenuItem;
N21: TMenuItem;
Button1: TButton;
procedure N11Click(Sender: TObject);
procedure N21Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3;
{$R *.dfm}
procedure TForm1.N11Click(Sender: TObject);
begin
If not Assigned(Form2)
then
Form2:=TForm2.Create(Application);
end;
procedure TForm1.N21Click(Sender: TObject);
begin
If not Assigned(Form3)
then
begin
Form3:=TForm3.Create(Application);
end
else Freeandnil(Form3);
end;
end.
Es gibt einen Unterschied:
Form drei wird mit selbigen Button der sie aufruft auch wieder geschlossen. Bei Form eins muß man wie gewohnt (über das "X") schließen.
Probiert es mal aus- bei mir klappts einwandfrei.
OH- bevor ich es vergesse- wichtig:
In der
Unit der jeweiligen Forms wie gewohnt:
Delphi-Quellcode:
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree
end;
und nicht vergessen:
Delphi-Quellcode:
procedure TForm2.FormDestroy(Sender: TObject);
begin
Form2 := nil;
end;
...sonst gibts wieder Fehlermeldungen!
Also, danke euch nochmal!!!
Bis bald,
Grüße Alex...der bestimmt bald wieder was textet