Ich überlege mir verschiedene Benutzeroberflächenlayouts für mein nächstes Projekt und ich frage mich, ob es entweder integrierte oder 3rd-Party-Frameworks gibt, die mir erlauben, Tabbed Document Interface zu erstellen?Tabbed Dokumentschnittstelle in Delphi
Um zu verdeutlichen, was ich will ist nicht eine Art von Docking-Mechanismus oder entweder eine MDI-Schnittstelle, sondern vor allem ein Framework, das mir ein Hauptformular und ein oder mehrere sekundäre Formulare, die als Registerkarten im Hauptformular angezeigt werden können .
Obwohl ich sagte, ich möchte keine Art von Docking-Mechanismus, machte ich eine kleine Testanwendung, die es tatsächlich verwendet. Das Ergebnis, das ich bekommen habe, ist sehr nahe an dem, was ich möchte. Zuerst vermisse ich einige Funktionen wie die Schließen-Schaltfläche auf jeder Registerkarte. Zweitens müsste ich ein eigenes Framework erstellen, um alle Aufgaben zu automatisieren, z. B. das Erstellen und Löschen der Registerkarten, das Zuordnen jedes neuen Formulars zu seinem Register, das Freigeben des Formulars, wenn das zugehörige Register geschlossen ist, und so weiter. Ich sage nicht, dass ich es nicht kann, aber ich würde gerne wissen, ob es fertige Frameworks gibt, die bereits alle diese Funktionen haben. Obwohl ich eine Open-Source-Lösung bevorzugen würde, ist auch eine kommerzielle Lösung willkommen.
Das Problem der Registerkarten-Schnittstellen geht weit über das Hinzufügen von Registerkarten hinaus. Das ist der einfache Teil. Es gibt komplexere, zum Beispiel das Hinzufügen von Menüs/Symbolleisten/Ribbons auf sinnvolle Weise. –
In meinem Fall wird nur das Hauptformular die Menüleiste enthalten und es wird keine Zusammenführung mit Menüs aus anderen Formularen geben, da dort keine Menüs vorhanden sind. Bei Symbolleisten ist das anders. Es ist normal, zusätzliche Symbolleisten in jedem Formular zu haben, und da diese Formulare innerhalb des Hauptformulars "integriert" und mit dessen Registerkarte verbunden sind, sind diese sekundären Symbolleisten "zu Hause" mit Funktionen, die nur mit den Formularen verknüpft sind in. – LightBulb