![]() |
Fenster/Seiten
Folgendes ist etwas unsauber / anfängermäßig beschrieben aber leider kann ich meine Frage nicht anders beschreiben. Da ich mit der Formulierung Probleme habe, ist auch das nachgucken in bereits vorhandenen Threads nicht leicht.
Ich stelle mal den Vergleich zu einer Website an: Wenn ich dort auf einen Hyperlink klicke, komme ich zu einer neuen Seite, die z.B. anders aussieht. Ähnliches möchte ich in Delphi erreichen: Ich habe 2 Buttons A und B. Nun soll nach dem Klick auf A eine neue Seite zu sehen sein, nach dem Klick auf B eine andere. Natürlich wäre das möglich, wenn ich in einer Form alles übereinanderpacke und dann die .visible Eigenschaften von einigen Objekten ändere. Dies scheint aber unelegant, da man in der Entwiklungsoberfläche dann innerhalb der Form ein Chaos von Objekten hätte. Außerdem möchte ich nicht, dass sich die jeweils folgende Seite in einem Popup öffnet, sondern sie eben an Stelle des Fensters mit den beiden Buttons A und B tritt. Vielen Dank und sorry für die verwirrende Erklärung :) |
AW: Fenster/Seiten
Moin...8-)
zuerst solltest du mal verraten ob du mit der VCL oder mnit FMX abeiten willst. Ansonsten stelle ich mal PageControl(VCL) bzw. TabControl(FMX) in den Raum. |
AW: Fenster/Seiten
Zitat:
|
AW: Fenster/Seiten
Zitat:
|
AW: Fenster/Seiten
Ich verstehe es so, daß Du zwei weitere Forms einrichten mußt, die über Show bzw. Showmodal angezeigt werden.
Gruß K-H |
AW: Fenster/Seiten
:P eben nicht:
Zitat:
|
AW: Fenster/Seiten
Zitat:
Zitat:
|
AW: Fenster/Seiten
Bin gerade dabei, mich ersteinmal zu informieren was esd mit VCL und FMX auf sich hat ;)
Bis jetzt habe ich in Delphi wirklich nur leichte Projekte realisiert (Mini-Datenbanken, Mathematische Probleme, Ampelschaltung, etc...). Deshalb bin ich mit diesen Begriffen wohl nicht vertraut. Danke! :) |
AW: Fenster/Seiten
Oh da hab ich die letzte Zeile überlesen...
(Naja, das Ausgangsform auf visible:=false setzen und noch ein bißchen tricksen...gleiche Koordinaten...) Klären wir erst einmal wofür es gut sein soll, dann gibt es bestimmt einen Weg wie man es umsetzen kann. Gruß K-h |
AW: Fenster/Seiten
Zitat:
|
AW: Fenster/Seiten
Dann ist VCL wahrscheinlicher. Welche Delphiversion? FMX ist die neue plattformübergreifende UI Bibliothek, welche anderst als die VCL nicht auf die vom Betriebsystem angebotene (UI)API, sondern auf mit Vektorgrafik erzeugte Oberflächen setzt.
Zitat:
|
AW: Fenster/Seiten
Mit VCL und FMX?
Mit den Forms bekomme ich diese Pop-ups, das habe ich jetzt begriffen. Wie nennt man das Modul/die Komponente, das kein Pop-up-Verhalten aufweist? Nur damit ich danach googlen kann... Ich glaube ich muss VCL verwenden, das ist das einzigste, was ich schonmal irgendwo vorher gelesen habe in einem Menü :D Delphi 7 ist meine Version (Ich weiß, nicht das neuste, aber ich hoffe, das reicht...:?) |
AW: Fenster/Seiten
Ein Formular ist ein neues Fenster. Bei der Verwendung von Frames ( der Form sehr ähnlich) kann man diese aber in eien Fenster Ein- und Ausblenden und damit den Inhalt des Fensters ( oder Teile, nämlich den Frame) Austauschen.
Bei einem PageControl kann man beliebig viele Seiten anlegen zwischen denen man Umschalten kann. Wenn man die Anzeieg der Tabs ausblendet ist das optisch mit der Verwendung von Frames identisch. |
AW: Fenster/Seiten
Zitat:
|
AW: Fenster/Seiten
Also von Umfang soll das ganze ca. so aussehen:
Erstes "Fenster": 2 Buttons mit "Neu beginnen" oder "altes Laden" Zweites "Fenster": Da wird dann ein bisschen mit Variablen rumgerechnet, je nachdem, auf welche Buttons man klickt. Drittes "Fenster": erreicht man über zweites "Fenster" und zeigt Highscores an. |
AW: Fenster/Seiten
Dann sollte die Lösung mit dem PageControl ausreichend sein.
|
AW: Fenster/Seiten
Ergänzung: Die Tabs lassen sich über
Delphi-Quellcode:
ausblenden.
TabVisible:= False
|
AW: Fenster/Seiten
Gut :) Kennt einer von euch ein gutes Tutorial dazu? Google hat mir auf die schnelle noch nichts brauchbares geliefert aber ich suche mal weiter...
|
AW: Fenster/Seiten
Probier es doch einfach aus und schaue Dir die Delphibeispiele an und auch in der Hilfe sollte etwas zu finden sein.
|
AW: Fenster/Seiten
Habe die Hilfe von Delphi jetzt erstmal zum Laufen gebracht (ging unter Win7 erstmal nicht). Sollten sich weitere Fragen ergeben, weiß ich ja, wer Ahnung hat ;)
|
AW: Fenster/Seiten
Da hier doch vollkommen unterschiedliche Inhalte angezeigt werden sollen (es riecht nach einem Spiel), sollte man definitiv mit Frames arbeiten.
Ein Frame für das Startbild, eins für das Spiel selber und eins für den HighScore. Die MainForm, bestimmt anhand das GesamtStatus, welches Frame angezeigt werden soll. Weitere Frames sind dann auch kein Problem (Einstellungen, etc.). Ansonsten gibt das doch einfach nur Gewurschtelt in einem Formular, wenn hier mit einem PageControl gearbeitet wird.
Delphi-Quellcode:
TMainForm = class( TForm )
private FView : TFrame; FState : Integer; procedure SetState( const Value : Integer ); end; procedure TMainForm.SetState( const Value : Integer ); begin if FState <> Value then begin if Assigned( View ) then begin FView.Release; FView := nil; end; FState := Value; case FState of 0 : FView := TStartFrame.Create( Self ); 1 : FView := TGameFrame.Create( Self ); 2 : FView := THighscoreFrame.Create( Self ); end; if Assigned( FView ) then begin FView.Parent := Self; FView.Align := alClient; end; end; end; |
AW: Fenster/Seiten
Schau mal hier:
![]() ...eine Zusammnefassung aus Hilfe und Foren. Ist eigentlich Pflichtlektüre. Imho besser als die lokale Hilfe weil immer aktuell und Beispiele / Fragen aus den Foren. :thumb: |
AW: Fenster/Seiten
Ich habe jetzt kurz zu PageControl gelesen und bin mir inzwischen nichtmehr sicher, ob das die Lösung ist.
Anscheinend hat man da solche "Tabs" und oben eine Art Register min einzelnen Registerkarten (?) und die gewünschte "Übersichtlichkeit" innerhalb einer Form sehe ich bis jetzt fraglich (erster Eindruck). Sir Rufo hat da schon recht, es geht in Richtung Spiel bzw. Simulation. Werde jetzt mal zu den Frames nachlesen, was die so "können" ;) Danke auch für den Link mit der Hilfe! Die onboard Hilfe ist da wohl doch beschränkter. |
AW: Fenster/Seiten
Zitat:
Aber nimm ruhg Frames, dies ist flexibler aber auch aufwendiger. |
AW: Fenster/Seiten
Danke, dass da sogar noch Quellcode dabei ist :thumb:
Teste das jetzt mal in Ruhe und bilde mich weier ;) Die Sache mit dem Ausblenden hatte ich dann wohl überlesen. Sorry.:roll: Trotzdem vielen Dank! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:23 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