Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Oberfläche einfych programmieren (https://www.delphipraxis.net/164476-oberflaeche-einfych-programmieren.html)

JKHero 14. Nov 2011 19:02

Oberfläche einfych programmieren
 
Moin Moin,

ich bin vor ein paar Wochen mit Delphi in Kontakt gekommen und möchte ein einfaches Programm erstellen. Dieses Programm soll im großen und ganzen nur fertige "Karteikarten" anzeigen.
Ich habe bereits ein einfaches Menü (Drucken, Schließene des Programms) auf einem Formular erstellt und möchte nun die Karteikarten anzeigen lassen. Man muss sich kwasi durch die Karten weiterklicken um zur nächsten Übung zu kommen.
Mein Problem ist nun folgendes. Ich möchte das Menü als Standardoberfläche beibehalten, also dass auf jeder Karte alle Funktionen des Programms noch zur Verfügung steht. Dazu möchte ich nach Möglichkeit relativ einfache Aktionen wie close oder show benutzen, um es so einfach wie möglich zu halten.
Wie kann ich das ganze nun anstellen?
Ich freu mich schon auf eure Antworten

gruß aus dem norden

Luckie 14. Nov 2011 19:12

AW: Oberfläche einfych programmieren
 
TMainMenu und TPageControl.

webcss 14. Nov 2011 19:24

AW: Oberfläche einfych programmieren
 
Zitat:

Zitat von Luckie (Beitrag 1136167)
TMainMenu und TPageControl.

Lieber TTabControl, weil der inhalt ist ja immer eine "Karteikarte", also gleiches Layout, nur wechselnder Inhalt.

JKHero 14. Nov 2011 20:54

AW: Oberfläche einfach programmieren
 
ok, ich hab mich mal eben über TtabControl schlau gemacht und denke so vom ersten Lesen, dass espassen könnte. Aber wie kann ich das jetzt konkret einbauen?

Luckie 14. Nov 2011 20:56

AW: Oberfläche einfych programmieren
 
Auf das Formular ziehen? Stell konkrete Fragen. Am besten in einem neuen Thread mit entsprechenden Titel.

JKHero 14. Nov 2011 20:59

AW: Oberfläche einfych programmieren
 
Wie ich oben schon geschrieben habe, bin ich relativer Anfänger. Daher wäre es mir ganz hilfreich, wenn das mit ein paar Worten beschrieben wird, wie genau ich mit dem TTabControl arbeiten kann (Wo ich es herbekommen, wie bau ichs aufs Formular, wie baue ich meine neuen Formulare da ein).

Luckie 14. Nov 2011 21:12

AW: Oberfläche einfych programmieren
 
Hach. Einfach mal aufs Formular ziehen und etwas mit rumspielen. Tipp: neue Seiten im Tabsheet erstellt man mit einem rechts Klick. Und jetzt speil einfach mal mit rum, den Eigenschaften im Objekt Inspektor, der Hilfe und Google ist auch immer ein guter Anlaufpunkt.

JKHero 14. Nov 2011 21:20

AW: Oberfläche einfych programmieren
 
Alles klar. Dann bastel ich mal drauf los.

Danke und schönen Abend noch

JKHero 15. Nov 2011 09:15

AW: Oberfläche einfych programmieren
 
Ich habe das TPageControl und TTabControl mal auf meinem Formular ausprobiert und auch mal eine neue Seite erstellt. Allerdings ist es nicht das was ich brauche.
Daher versuche ich noch einmal mein Problem zu konkretisieren.

Was ich bis dato habe ist ein Formular mit einem Menü. Das Programm an sich soll so einfach wie möglich aufgebaut sein. Von meinem Menüformular aus möchte ich das Programm mit einem Button "Start" starten. Die Aktion, die daraufhin folgt, ist, dass der Inhalt des "Menüfensters" geändert wird. Quasi ein neues Formular, welches aber trotzdem den Menükopf beibehält. Von diesen Formularen will ich mich zu den nächsten Formularen durchklicken. Das würd ich einfach mit close; und show; machen, um es übersichtlich zu halten.
Wie kann ich das nun durchführen? Ich bitte um eine Erklärung mit verständlichem Text und bitte nicht nur kurze Stichwörter.

Danke

Gausi 15. Nov 2011 09:33

AW: Oberfläche einfych programmieren
 
Das geht auch mit einem PageControl. Man kann dort bei den einzelnen Seiten die Tabs ausblenden lassen durch
Delphi-Quellcode:
TabSheet1.TabVisible := False; // usw.
Die anzuzeigende Seite kann man dann per Code setzen
Delphi-Quellcode:
PageControl1.ActivePage := TabSheet2;
Damit habe ich in einem Programm z.B. einen Wizard erstellt, der beim ersten Start auf mehreren Seiten ein paar Dinge abfragt.

Wenn die einzelnen Seiten aber alle gleich aussehen und sich im Wesentlichen nur die Texte ändern, lässt sich das natürlich alles auf einer Seite regeln. Beim durchklicken werden dann nur die anzuzeigenden Daten geändert, und nicht die ganze Oberfläche.

himitsu 15. Nov 2011 09:34

AW: Oberfläche einfych programmieren
 
Du kannst gleiche Inhalte in einen TFrame reinmachen und baust diesen Frame in alle Forms ein, wo dieses benötigt wird.

oder

Bei TPageControl kann man die Tabs ausblenden, dann kannst du softwareseitig die Pages umstellen und somit andere Inhalte anzeigen. (alles in einer Form)

oder

du baust dir mehrere Forms, wo du überall das selbe men einbaust. (ist nicht so optimal, da mehrfacher Code entstehen würde)

oder

...

JKHero 15. Nov 2011 10:04

AW: Oberfläche einfych programmieren
 
Es ist richtig, dass sich im wesentlichen nur die Texte ändern. Nur soll zu jeder Seite noch eine Lösung in einem Modalen Fenster angezeigt werden. Kann ich dann auch jeden neuen Text mit dem Menü steuern? Also das es nach außen so aussieht, als wäre es immer eine neues Fenster? Und ist das mit PageControl zu verwirklichen?

mani64 18. Nov 2011 01:29

AW: Oberfläche einfych programmieren
 
ein wenig oot:

Das klingt für mich nach einem Karteikastensystem zum Lernen.
Ich möchte niemandem die Freude am Programmieren nehmen, aber es gibt solche Programme (mit großem Funktionsumfang) kostenlos im Internet (z.B. MemoryLifter) oder auch gegen kleines Geld (z.B. Phase 6).

Ich denke, am besten verwendest du eine Datenbank und ein entsprechendes Formular, das dir die Inhalte anzeigt.
Du solltest zunächst exakt umschreiben, was das Programm alles können soll, z.B.
- Programmteil zur Eingabe der Daten
- Programmteil für den Lernmodus
- Eingabe der Antwort?
- Lernkontrolle durch Programm oder durch dich?
- Einordnen der Karteikarten in die entsprechende Stufe
- ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:26 Uhr.

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