![]() |
Re: Menü in Delphi realisieren
Liste der Anhänge anzeigen (Anzahl: 1)
@mkinzler: Eher TPageControl ;-)
@Problemmacher: Wie wärs mit Frames? Ein Frame ist ein "Teil" einer Form, den du wie eine Form mit COntrols und natürlich Code bestücken kannst. Dann brauchst du z.B. einen Frame für deine Städte, und einen für was anderes. Da deine Ausführungen hier sehr unklar sind, mach ich kurz mal ne Demo fertig. |
Re: Menü in Delphi realisieren
Zitat:
|
Re: Menü in Delphi realisieren
Oh das ist sehr nett! Hab ja auch im ersten Posting geschrieben
das ich eine Art IFrame oder Include Lösung suche wie man sie von Websites kennt. Wusste nicht wie ich das anders ausdrücken soll. Brauch halt ein festes Menü und dann halt einen Bereich der universell je nach Menüpunkt angezeigt werden soll. Hierfür eignete sich die Visible-Eigenschaft allerdings nicht, da ich so bei jeder Menüklickprozedur unzählige Sachen ausblenden musste, um das gewünschte anzuzeigen ... |
Re: Menü in Delphi realisieren
Hallo,
das ist ganz einfach: Du definierst dir ein
Delphi-Quellcode:
und immer wenn du die frames wechselst, machst du
ActiveFrame: TFrame;
Delphi-Quellcode:
damit musst du pro Menüart immer nur einen frame definieren.
ActiveFrame.Hide;
ActiveFrame := NewFrame; |
Re: Menü in Delphi realisieren
@DGL-luke - Das mit dem Menü ist schon genau das was ich vor hatte,
jedoch weiß ich nicht ob ich mit der Einbindung der Inhalte so zu recht kommen werde. Wenn wir jetzt ein anderes Beispiel nehmen, z.B. ich möchte gern ein Programm schreiben worüber man auf zwei Spiele zugreifen kann ... über das Menü, ist ja jetzt so kein Problem denke ich mal ... Jedoch erscheint mir deine Demo zumindest so, als wäre sie an ein Schema gebunden. Sprich dort steht immer der Stadtame u.s.w., jedoch wollte ich gern inhaltsmäßig völlig unabhängige Seiten voneinander gestalten. Genau wie auf einer Website, dort ist der Inhalt auch immer anders und nicht nach dem gleichen Schema, so ist die Newssektion anders aufgebaut als die Impressums Seite ... Worum es mir also ging, ist folgendes: Ich mache wie gewohnt im Formular meine Komponenten u.s.w. für eine Seite fertig. Dann hab ich ja ein eigenständiges Programm bzw Projekt. Nun mache ich noch eins und hab also zwei Programme geschrieben, die verschieden platzierte Komponenten haben, andere Aufgaben u.s.w. ... nun wollte ich die halt durch das Menü benutzerfreundlicher zugänglich machen, damit nicht alles auf eine Formular-Seite gepackt wird. Entschuldigt falls ich mich unklar ausgedrückt habe, aber ist halt schwer zu erklären was machen zu wollen, was man selber nicht kann =)! Danke auf jeden Fall dafür, dass ihr euch bereits so viel Zeit genommen habt, um mir zu helfen! |
Re: Menü in Delphi realisieren
Jop.
Geh mal auf Datei|Neu|Frame. Dann hast du genau so einen Frame, den du mit einer "Maske" aus Komponenten ausstatten kannst. Wenn du wirklich total unterschiedliche Sachen willst, musst du halt für jedes einen einzelnen Frame machen. Das kannst du ja auch verschachteln! Also einen "Spiele"-Frame, und in diesen dann die Information über die anderen frames, sprich die einzelnen spiele. du musst halt dann im frame noch eine variable definieren, der du das gewünschte spiel zuweisen kannst. (Ich weiß ja nicht, obs dir aufggefallen ist, aber ich benutze hier immer die "Tag"-Eigenschaft. Das kannst du so beibehalten, du musst dann nur pro "Kategorie" ein OnCLick-Event implementieren - wäre zumidnest IMO das praktischste) |
Re: Menü in Delphi realisieren
Ok langsam hab ich es, nurnoch paar "doofe Fragen", weil
ich es noch nicht ganz verstanden hab. Muss man halt einmal richtig durchgemacht haben und dann versteht man das auch, aber beim ersten Mal ist es immer schwer, sorry ... Hab nun das Formularfenster(Unit1) und einen neuen Frame (Unit2) erstellt, nun habe ich ja zwei Fenster in Delphi. Nun meine Fragen ... > Wo kann ich im Hauptformularfenster (Unit1) bestimmen wo der Frame XY angezeigt werden soll? > Wie bzw. was schreibe ich in die Przedur des jeweiligen Menüpunktes, damit der jeweilige gewünschte Frame im Hauptformularfenster geöffnet wird. Danke =)! |
Re: Menü in Delphi realisieren
Hallo,
ich würde erstens den Frames sinnvolle Name geben :) dann zu deinen Fragen: - Stell am besten den "Align" des Frames auf alClient. Er wird dann da, wo er hineinkommt, alles ausfüllen. Wo er genau hinkomt, bestimmst du über die Eigenschaft "Parent". Die sollte eigentlich immer die selbe sein, und kann eine beliebige von TWinControl abgeleitete Komponente sein, z.B. ein TPanel. - Das siehst du in meiner Demo: "Frame.Show". Wie bereits gesagt, solltest du dir irgendwo merken, welcher frame zuvor aktiv war, damit du den verstecken kannst. |
Re: Menü in Delphi realisieren
Zitat:
geladen und der alte wäre dann doch nicht mehr sichtbar, oder? Falls nein, was wäre denn dann das Gegenteil von Frame.Show ... Frame.Delete /.Destroy? |
Re: Menü in Delphi realisieren
Hallo,
wenn du nur den zweiten auf sichtbar schaltest, dann wird der alte drunterstecken, und evtl. streiten sich die dann um den Platz da ^^ Deshalb solltest du den alten gleich wieder auf Nicht sichtbar schalten. Das geht entweder per "Visible := false" oder per "Hide". Zu deiner PN: Zitat:
Zitat:
wenn du dir meinen Code im OnFormCreate anschaust:
Delphi-Quellcode:
self ist hier die Form, das müsstest du nur durch "FramePanel" oder wie auch immer du dein panel nennen willst ersetzen.
Cityframe := TCityFrame.Create(self);
Cityframe.Parent := self; //das ist das wichtigste |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:40 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