![]() |
Pagecontrolproplem
Hallo,
ich würde gerne für meine Textverarbeitung TexEdit ein Pagecontrol verwenden, um mehrere dokumente gleichzeitig zu öffnen. Das mit neuen Seiten erstellen klappt schon, doch wie soll ich dann ein Richedit einfügen. Und wie kann ich dafür sorgen, dass wenn man zumbeispiel die Schriftart ändert das nur für das gerade aktive Richedit gemacht wird? |
DP-Maintenance
Dieses Thema wurde von "SirThornberry" von "Sonstige Fragen zu Delphi" nach "VCL / WinForms / Controls" verschoben.
|
Re: Tabcontrolproplem
1. Der Link in Deiner Signatur ist kaputt (fehlt wohl ein ":")
2. Bei TexEdit denke ich immer an TeX, dabei erwähnst Du ausgerechnet das nicht ;) Ok, ich schweife ab. Die Lösung lautet, die einzelne TTabSheet mit den Elementen darauf dynamisch zu erstellen, also etwa:
Delphi-Quellcode:
Damit Änderungen sich nur auf das aktuelle auswirken, schaust Du pcMain.ActivePage nach, enumerierst dort alle Controls (Eigenschaften "Controls", "ControlCount"), und wenn eines der TRichEdit ist ("is TRichEdit"), dann wendest Du deine Formatierung auf dessen Inhalt an.
var tabNew: TTabSheet;
begin tabNew := TTabSheet.Create(pcMain); tabNew.Parent := pcMain; tabNew.PageControl := pcMain; // hier das TRichEdit und weitere Komponenten erzeugen end; |
Re: Pagecontrolproplem
Danke für den Tipp, und wo genau fehlt ein ':'?
|
Re: Pagecontrolproplem
Also einen Link prüfen darf doch nicht so schwer sein :P
Geh einfach mit der Maus über den Link, dann wirst Du sehen daß er als: Zitat:
|
Re: Pagecontrolproplem
Aha, hab ich ganz übesehen :oops:
|
Re: Pagecontrolproplem
Funktioniert das auch mit Pagecontrol?
|
Re: Pagecontrolproplem
pcMain oben IST ein TPageControl. Aber die Unterseiten eines TPageControls sind nun TTabSheets ;)
|
Re: Pagecontrolproplem
Oh man, bin ich blöd!!! :wall:
|
Re: Pagecontrolproplem
Ich hab jetzt den Quelltext mal getestet, und das mit den TabSheets erstellen funkt
schon mal. aber das mit der einzelveränderung funkt noch nicht.
Delphi-Quellcode:
wie könnte es anders gehen?
PageControl1.ActivePage.Controls[RichEdit1.Selattributes.Size:=StrToInt(ComboBox1.Text)];
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:16 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-2025 by Thomas Breitkreuz