![]() |
Kompo zur Laufzeit auf einem TaNotebook erstellen
Liste der Anhänge anzeigen (Anzahl: 1)
Also ich will eine Komponent auf einer Seite einer TabNotebook erstellen. Mein Ansatz:
Delphi-Quellcode:
Na ja, dass hat nicht gefunzt, also habe ich den align-Teil wegkommentiert und stattdessen Left=300; eingefügt. Was dabei rauskommt, wenn man dann auf Eine andere Registerkarte wechselt und wieder zurück, ist im Anhang
var MySynEdit:TSynEdit;
begin TabbedNotebook1.Pages.Add('Editor2'); TabbedNotebook1.ActivePage :='Editor2'; MySynEdit :=TSynEdit.create(self); MySynEdit.Parent :=TabbedNotebook1; MySynEdit.Show; MySynEdit.Align :=alclient; end; Also wie bekomme ich das jetzt richtig? |
Re: Kompo zur Laufzeit auf einem TaNotebook erstellen
Versuchs mal so:
Delphi-Quellcode:
var MySynEdit:TSynEdit;
begin TabbedNotebook1.Pages.Add('Editor2'); TabbedNotebook1.ActivePage :='Editor2'; MySynEdit :=TSynEdit.create(TabbedNotebool1); MySynEdit.Parent :=TabbedNotebook1; MySynEdit.Show; MySynEdit.Align :=alclient; end; |
Re: Kompo zur Laufzeit auf einem TaNotebook erstellen
Eigentlich sehr bizarr, so habe ich es auch schon probiert. Und erst habe ich das gefühl, als hätte alles gefunzt, aber das hat es nicht, denn wenn man auf eine andre Registerkarte wechselt und wieder zuück, ist das SynEdit hinter dem Notebook, also nicht mehr zu sehen
|
Re: Kompo zur Laufzeit auf einem TaNotebook erstellen
Moin Yankee,
warum nimmst Du nicht lieber ein TPageControl? |
Re: Kompo zur Laufzeit auf einem TaNotebook erstellen
Gute Idee, wollte ich gerade mal versuchen. Aber scheibra gibt es dort die procedure .pages.add nicht. Also wie mache ich es dann?
|
Re: Kompo zur Laufzeit auf einem TaNotebook erstellen
Moin Yankee,
Du erzeugst ein TabSheet und weist dessen Eigenschaft PageControl das gewünschte zu:
Delphi-Quellcode:
with TTabSheet.Create(PageControl1) do begin
PageControl := PageControl1; Parent := PageControl1; Caption := 'Tabsheet'+IntToStr(PageControl1.PageCount); Name := 'Tabsheet'+IntToStr(PageControl1.PageCount); end; |
Re: Kompo zur Laufzeit auf einem TaNotebook erstellen
Vielen Dank für die schnelle Atwort erstmal, aber irgendwie habe ich das Problem immernoch. Der Quelltext:
Delphi-Quellcode:
Ich führe die procedure aus. Ok. Ich gehe auf ein anderes Tab. Ok. Ich komme zurück UND MEIN SYNEDIT IST WIEDER WEEEEEEG!!!! *heul* *heul*
procedure Tmainform.NewWindow1Click(Sender: TObject);
var MySynEdit:TSynEdit; begin with TTabSheet.Create(jvPageControl1) do begin PageControl := jvPageControl1; Parent := jvPageControl1; Caption := 'Tabsheet'+IntToStr(jvPageControl1.PageCount); Name := 'Tabsheet'+IntToStr(jvPageControl1.PageCount); end; jvpagecontrol1.ActivePageIndex :=2; MySynEdit :=TSynEdit.create(jvPageControl1); MySynEdit.Parent :=jvPageControl1; MySynEdit.Show; MySynEdit.Align :=alclient; end; WIESO?????????????????????????????? |
Re: Kompo zur Laufzeit auf einem TaNotebook erstellen
Moin Yankee,
Du musst als Parent das Tabsheet angeben, auf dem die SynEdit Kompo liegen soll. |
Re: Kompo zur Laufzeit auf einem TaNotebook erstellen
JUUUUUUUHHHHHHHHUUUUUUUUUUU :thuimb: :thuimb: :thuimb:
ES GEHT!!!!!!!!!!!!!!!!!!! :lol: :lol: :lol: SPAß!!!!!!! Jetzt kann ich wieder weiter :coder: :roteyes: :roteyes: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz