Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Eigenen Texteditor als einheitl. Komponente zusammenfassen? (https://www.delphipraxis.net/142315-eigenen-texteditor-als-einheitl-komponente-zusammenfassen.html)

TheMiller 26. Okt 2009 08:27


Eigenen Texteditor als einheitl. Komponente zusammenfassen?
 
Hallo,

ich habe vor laanger Zeit mal einen Texteditor geschrieben, der schon recht komfortabel ist. Ich habe jetzt ein Projekt, bei dem ich sehr viele Tabs und Forms habe, auf denen ein Texteditor angezeigt werden muss. Hier hätte ich also über 10 Texteditoren (ja, das ist so notwendig und das Projekt ist schon durchdacht - es hat schon seinen Sinn ;) )

Der Texteditor besteht aus einem Richedit, ein paar Buttons (Fett, Unterstrichen etc..), Comboboxes (Farbe, Größe etc..) usw.

Doch immer wieder diese Komponenten auf jedem Tab gleich zu platzieren, die Anchors einzustellen, die Buttons mit den Aktionen zu verknüpfen usw. ist wirklich mühselig. Gibt es nicht einen Weg, all diese Komponenten zu einer eigenen zusammenzufassen? Am besten so, dass ich sie dann in der Komponentenpalette habe? Das würde mir viel Arbeit ersparen... die Ereignisse der Knöfe etc müssten aber schon verknüpft sein.

Also, mit einer Komponente - denke ich - wird es so nicht gehen, aber vielleicht kann man das anders als Paket zusammenfassen.

Vielen Dank im Voraus!

Bbommel 26. Okt 2009 08:33

Re: Eigenen Texteditor als einheitl. Komponente zusammenfass
 
Pack den Editor mit seinen Buttons und Editor-Spezifischen Ereignissen doch einfach in ein Frame. Das Frame kannst du dann in die jeweiligen Tabs einfügen und alles sollte komplett funktionieren.

Bis denn
Bommel

Medium 26. Okt 2009 08:34

Re: Eigenen Texteditor als einheitl. Komponente zusammenfass
 
Klingt nach einem Paradebeispiel für Delphi-Referenz durchsuchenTFrames!

TheMiller 26. Okt 2009 08:35

Re: Eigenen Texteditor als einheitl. Komponente zusammenfass
 
Hm... das ist schlecht. Die Editoren müssen gleichzeitig verschiedene Texte halten, anzeigen und zur Bearbeitung zur Verfügung stellen... oder hätte ich mit Frames - ich hab mit denen noch nie gearbeitet - eigene Instanzen der Editoren?

Medium 26. Okt 2009 08:36

Re: Eigenen Texteditor als einheitl. Komponente zusammenfass
 
Ja

TheMiller 26. Okt 2009 08:38

Re: Eigenen Texteditor als einheitl. Komponente zusammenfass
 
Oh.. okay. Jetzt gleich die Anschlussfrage: Kennst du - oder jemand anderes - ein empfehlenswertes Tutorial zu den Frames? (Ich bemühe jetzt auch gleich die Suche)

Bbommel 26. Okt 2009 08:41

Re: Eigenen Texteditor als einheitl. Komponente zusammenfass
 
Ja, du hast in jedem Frame eine komplett eigenständige Instanz des Editors. Grob gesagt "erbt" dann der Editor in den einzelnen Tabs die Eigenschaften und Aktionen von dem, was du im grundlegenden Frame gebastelt hast, aber er ist eine eigene Instanz, so dass der Benutzer in jedem Editor-Frame völlig unabhängige Texte eingeben kann. Du könntest auch in einem spezifischen Tab die Eigenschaften des zugrunde liegenden Frames "überschreiben", wenn ausnahmsweise mal irgendwo etwas anders aussehen oder funktionieren soll.

Von der Vorstellung kommt es also der üblichen Objekthierarchie recht nahe, ist aber in Delphi etwas anders umgesetzt, daher andauernd die Anführungszeichen.

Bis denn
Bommel

Bbommel 26. Okt 2009 08:47

Re: Eigenen Texteditor als einheitl. Komponente zusammenfass
 
Zitat:

Zitat von DJ-SPM
Oh.. okay. Jetzt gleich die Anschlussfrage: Kennst du - oder jemand anderes - ein empfehlenswertes Tutorial zu den Frames? (Ich bemühe jetzt auch gleich die Suche)

Ich kenne kein Tutorial, aber probiere es doch mal einfach aus: Bastel dir ein Testprojekt, in dem du in deinem Main-Form ein PageControl hast und erstelle dann ein neues Frame. Ins Frame kannst du ja ein Memo plazieren oder ein paar Edits mit ein oder zwei Ereignissen. Dieses Frame kannst du dann über "Frames" aus der "Standard"-Palette auf die einzelnen Seiten einfügen. Du gibst den Frames dann wie allen anderen Komponenten auch einen Namen, kannst sie ausrichten usw.

Ich denke, wenn du das mal einfach ausprobiert hast, wirst du recht schnell sehen, wie das gelöst ist und kannst es dann auch für dein eigentliches Projekt umsetzen.

Ansonsten frag aber gerne noch mal nach, wenn was unklar bleibt.

Bis denn
Bommel

alzaimar 26. Okt 2009 08:57

Re: Eigenen Texteditor als einheitl. Komponente zusammenfass
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier, hab mal sowas gebastelt. Er basiert auf dem TRichEdit und man kann Fonts und Größen, Farben sowie die Textausprägung wählen.

Die Testumgebung besteht aus einem TEdit (sinnlos) und dem Frame. Erst wenn das Frame den Fokus besitzt, wird die Tool-Leiste sichtbar.

TheMiller 26. Okt 2009 09:38

Re: Eigenen Texteditor als einheitl. Komponente zusammenfass
 
Wow. Vielen Dank für euer Engagement. Das Programm scheint ja wirklich für Frames prädestiniert zu sein und der Umgang mit Frames scheint ja auch recht einfach zu sein.

Ich bin dann mal am Basteln ;)

Vielen Dank soweit!

PS: Auch <<Danke>> für das Demo-Projekt. Super!


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:00 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz