Anlatılanları örneğe de ben dökmüş olayım.
İki adet formunuz olsun.
1. fsMDIForm tipinde
2. fsMDIChild tipinde (örneğimizde unit2'deki TFormChild oluyor)
fsMDIForm olana bir tane TMainMenu bırakalım. Menüye de iki başlık açalım.
"DOSYA"
"PENCERELER" ( örneğimizde name property'si "miPencereler" )
DOSYA altına iki alt başlık ekleyelim, bunlara diyelim ki
"Yeni Pencere" ( örneğimizde name property'si "miYeniPencere" )
"Çıkış"
aşağıdaki kodu fsMDIForm ana formumuza işleyelim.
uses Unit2;
procedure TForm1.FormCreate(Sender: TObject);
var
LMenuItem: TMenuItem;
begin
if miPencereler.Count = 0 then
begin
LMenuItem := TMenuItem.Create(miPencereler);
LMenuItem.Caption := '-';
miPencereler.Add(LMenuItem);
end;
self.WindowMenu := miPencereler;
end;
procedure TForm1.miYeniPencereClick(Sender: TObject);
{$j+}
const
LPencere : Integer = 0;
{$j-}
var
LNewName : string;
begin
With TFormChild.Create(self) do
begin
inc(LPencere);
Name := Format('Child_%.2d', [LPencere] );
Caption := Name;
FormStyle := fsMDIChild;
end;
end;
procedure TForm1.miCikisClick(Sender: TObject);
begin
Close;
end;
Sonuç :