Otwieranie nowego dokumentu w zakładce
Adam Boduch
Oto krótki poradnik jak zrobić aby nowy dokument otwierał się na nowej zakładce (patrz rysunek). Skorzystam z szablonu jaki udostępnia MDIApplication.
#Klikamy na File->New->Other i wybieramy MDIApplication
#Po wskazaniu folderu otwieramy formę CHILDWIN
#Zmieniamy FormStyle na fsNormal oraz BorderStyle na bsNone
#Przechodzimy do głównej formy
#Wrzucamy komponent PageControl i zmieniamy jego nazwe na pctrlMain
#Odnajdujemy ten oto kod:
procedure TMainForm.CreateMDIChild(const Name: string);
var
Child: TMDIChild;
begin
{ create a new MDI child window }
Child := TMDIChild.Create(Application);
Child.Caption := Name;
if FileExists(Name) then Child.Memo1.Lines.LoadFromFile(Name);
end;
Teraz zmieniamy go na:
procedure TMainForm.CreateMDIChild(const Name: string);
var
Child: TMDIChild;
zakladka: TTabSheet;
begin
child := TMDIChild.Create(Application); //Tworzymy formę
zakladka := TTabSheet.Create(Self); //Tworzymy zakładkę
zakladka.Caption := extractfilename(name); //Zmieniamy Caption na nazwę pliku
zakladka.PageControl := pctrlMain; //Przypisujemy zakładkę do PageControl
child.Align := alClient;
child.Visible := true;
Child.Caption := Name;
child.SetFocus;
if FileExists(Name) then Child.Memo.Lines.LoadFromFile(Name);
child.Parent := zakladka;//Tu jest kod który wrzuca okno do Page Control
pctrlMain.ActivePage := zakladka;
end;
Przenioslem tutaj tekst ktory dodal Berus123 (dodane w nieodpowiednim miejscu).