JavaFX Hilfe beim Design eines Quiz

Astobix

Neues Mitglied
Hallo,

ich fange gerade erst an, JavaFX kennenzulernen, und habe mir als kleines Projekt vorgenommen, ein Quiz zu programmieren. Die Funktionen, die das Quiz beinhalten soll, sind dabei kein Problem; diese sind entweder schon implementiert oder können sehr einfach implementiert werden.

Wo ich aber Hilfe bei gebrauchen könnte, ist das GUI. Konkreter geht es mir hauptsächlich um die Antwortfelder für den Nutzer (Es handelt sich um ein Multiple Choice Quiz, der Nutzer soll also auf eine von 4 Antworten klicken).
Zunächst stellt sich hierbei die Frage, welcher Control dafür am besten geeignet ist. Derzeit benutzte ich Labels mit einem Rand, angeordnet in einem Gridlayout ( Screenshot ). Die Labels waren bis jetzt nur eine Übergangslösung - jetzt würde ich gerne eine optisch ansprechendere Variante haben die im besten Fall folgende Bedingungen erfüllt:
  1. Die 4 Felder sind alle gleich groß (unabhängig vom Inhalt) und stehen im Verhältnis zur Fenstergröße
  2. Der Text in den Feldern muss die möglichkeit eines Zeilenumbruchs haben
  3. Die Felder sollen dem Nutzer ein Feedback geben, wenn er sie klickt (Ändern der Farbe o.Ä. , quasi wie ein Button)
  4. Die Felder sollen optisch eben zu einem Quiz passen.

Mir geht es hier jetzt nicht um ein perfektes Design, aber eben etwas, wo der Nutzer keinen Augenkrebs von bekommt. Da ich mich noch kaum mit JavaFX auskenne und bei den vielen verschiedenen Controls etwas den Überblick verliere, würde ich mich über ein paar Tipps sehr freuen! :)

Bei Bedarf und/oder Interesse kann ich natürlich die zum Programm gehörige FXML Datei als Anhang hochladen.

Liebe Grüße,
Astobix
 

dzim

Top Contributor
1) Warum Labels und keine Buttons? (Über ein beim Start spezifiziertes CSS kannst du die Buttons auch gern "flach" designen und du sagst ja selbst: "quasi wie ein Button" - dann solltest du den auch verwenden!)
2) Warum die Grösse abhängig vom Fenster machen? Das sieht, meiner Meinung nach, eher komisch beim verändern des Fensters aus.
3) Minimale Grösse festlegen (minWidth und minHeight) und nach dem Festlegen der Daten (ich meine damit den Inhalt der Buttons), kannst du schauen, welches der grösste ist und die anderen entsprechend anpassen.
4) Frage: Willst du in den Fragen auch vorwärts und Rückwärts navigieren? Wenn ja, würde ich wahrscheinlich ein FXML mit den Layout für die Antworten erstellen (GridPane mit der Frage und den vier Buttons) und diese dann im Controller der "Eltern-Oberfläche" erstellen und mit Daten befüllen. Der Controller der jeweiligen Frage muss ja nicht so wahnsinnig viel machen...

Ich würde an deiner Stelle mal folgendes machen: Erstelle die FXML und einfache Controller, sowie ein CSS, und zeig uns dann mal dann, was du hast. Dann können wir dir vielleicht ein paar mehr Ratschläge geben.

Zum Thema CSS:
Schaue dir die Referenz bei Oracle an: https://docs.oracle.com/javase/jp/8/javafx/api/javafx/scene/doc-files/cssref.html
Unter Client Technologies: Java Platform, Standard Edition (Java SE) 8 Release 8 schaue dir das Tutorial zu CSS an: Part IV: Skinning JavaFX Applications with CSS (Release 8)
Mir hat auch immer ein Blick in die Basis-CSS der Platform geholfen: Im Verzeichnis von deinem JDK nach der jfxrt.jar suchen und entpacken. Dort dann die modena.css suchen. Da lernt man eigentlich das meiste (Standart-Farbe der Style-Klasse, diverse Pseudo-Klassen (:hover, ...), u.s.w.u.s.f.).
 

Astobix

Neues Mitglied
Erstmal vielen Dank für die Antwort!

Ich habe zunächst Label benutzt, da ich einfach erstmal die Quizfragen aus einer XML laden und ausgeben wollte, ohne mich dabei groß um das Design zu kümmern. Ich werde dann mal versuchen, diese mit Buttons zu ersetzten.
Vielleicht war die Idee mit der Größenabhängigkeit zum Fenster hin eher unklug, da hast Du Recht. Auf jeden Fall möchte ich, dass alle 4 Buttons unabhängig von der länge des darin enthaltenen Texts gleich groß sind. Das kann ich natürlich nach dem größtem Button ausrichten.

Deine Frage bei 4) verstehe ich nicht ganz. Mit vorwärts und rückwärts navigieren meinst du quasi das vor und zurück, wie man es zum Beispiel aus dem Browser kennt?
Ich navigiere natürlich indirekt vorwärts, indem ich die nächste Frage lade. Bin mir hier jedoch nicht genau klar was du meinst, würde mich über eine Erläuterung freuen :)

Ich soll also deiner Meinung nach ungefähr das hier tun:
1. Erstellen einer eigenen FXML, die ein GridPane mit Frage und Antworten enthält
2. Dabei sind die Antworten mit css gestylte Buttons
3. Diese im Programm als Kind eines übergeordnetem Layouts erzeugen

Hoffe das habe ich jetzt richtig verstanden ;) Jedenfalls danke für die Hilfe, ich werde mir die Tutorials zu CSS mal angucken und einen eigenen Versuch morgen hochladen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Hilfe beim tablevies AWT, Swing, JavaFX & SWT 2
W Swing Hilfe beim Einbinden von Bildern in einem JFrame AWT, Swing, JavaFX & SWT 8
R Hilfe beim ändern des Hintergrundes eines JFrames AWT, Swing, JavaFX & SWT 9
C Gesucht: Hilfe beim programmieren. AWT, Swing, JavaFX & SWT 1
C Hilfe beim programmieren mit studiumgebundenes Projekt AWT, Swing, JavaFX & SWT 1
F Hilfe beim ausschalten von Robot AWT, Swing, JavaFX & SWT 7
S Hilfe beim Lernprozess von java3d AWT, Swing, JavaFX & SWT 20
K Swing Hilfe beim JTree! AWT, Swing, JavaFX & SWT 3
L Mein Kopf dreht sich... Brauche Hilfe beim GUI gestalten AWT, Swing, JavaFX & SWT 10
G Hilfe beim Erstellen eines eigenen Html-Editors! AWT, Swing, JavaFX & SWT 4
C Hilfe beim JFileChooser AWT, Swing, JavaFX & SWT 8
V Brauche Hilfe beim Steuern des Sichtbereiches eines JPanel AWT, Swing, JavaFX & SWT 2
I Hilfe bei dem Erstellen einer SQL Abfrage aus gewählten JComboBoxen AWT, Swing, JavaFX & SWT 5
JavaBeginner22 Button Hilfe AWT, Swing, JavaFX & SWT 0
ExceptionOfExpectation Textdarstellung auf einem Canvas mit Hilfe von repaint(); AWT, Swing, JavaFX & SWT 6
senol JOptionPane hilfe!!! :(((( AWT, Swing, JavaFX & SWT 32
donnico2 Objekte in der GUI ausgeben mit Hilfe einer DAO AWT, Swing, JavaFX & SWT 1
J Swing Hilfe bei Layout AWT, Swing, JavaFX & SWT 2
Zrebna JavaFX-Projekt mit Bildern funktioniert nicht - um Hilfe wird gebeten AWT, Swing, JavaFX & SWT 14
F BorderLayout Hilfe bei Anzeige AWT, Swing, JavaFX & SWT 2
T Swing Hilfe - Selbst Informatik Lehrer konnte mir nicht weiter Helfen AWT, Swing, JavaFX & SWT 2
A Swing TicTacToe-Bitte um Hilfe AWT, Swing, JavaFX & SWT 32
T Bitte um Hilfe AWT, Swing, JavaFX & SWT 2
T Hilfe bei Code AWT, Swing, JavaFX & SWT 2
S Hilfe bei Java Gui Anfänger AWT, Swing, JavaFX & SWT 5
J Warum geht das nicht? if-else usw..... compilieren geht nicht -- HILFE!!! AWT, Swing, JavaFX & SWT 10
M Problem mit Layoutmanagern... Hilfe wäre sehr nett. AWT, Swing, JavaFX & SWT 2
T Hilfe was mus ich tun um das fertige JfxFenster zu sehen AWT, Swing, JavaFX & SWT 2
A hilfe für flowlayout AWT, Swing, JavaFX & SWT 6
N Swing Benötige Hilfe um ein Swing Canvas zu speichern AWT, Swing, JavaFX & SWT 4
X Swing JButton's zum JScrollPane hinzufügen geht nicht. Bitte um Hilfe. AWT, Swing, JavaFX & SWT 9
V Swing Brauche Hilfe mit Label AWT, Swing, JavaFX & SWT 3
T Swing JTable Zeile mit ausgelesenen Werten mit Hilfe von einem Button hinzufügen AWT, Swing, JavaFX & SWT 1
H Swing Hilfe bei GUI AWT, Swing, JavaFX & SWT 4
T HILFE wie lösche ich gezeichnetes per tastendruck AWT, Swing, JavaFX & SWT 1
R Swing JOptionPane Fehlermeldung- bitte um Hilfe! AWT, Swing, JavaFX & SWT 4
Tausendsassa ImageIcon?! Hilfe! AWT, Swing, JavaFX & SWT 10
C Hilfe bei JSpinner und JList AWT, Swing, JavaFX & SWT 1
J GridBagLayout mit Hilfe einer For-Schleife befüllen AWT, Swing, JavaFX & SWT 1
M Hilfe bei Performanceverbesserung AWT, Swing, JavaFX & SWT 34
B Hilfe welches Layout brauch ich AWT, Swing, JavaFX & SWT 4
M SwingWorker Hilfe! AWT, Swing, JavaFX & SWT 10
K Swing Brauche Hilfe AWT, Swing, JavaFX & SWT 6
O AWT Performance und Bug behebung[brauche Hilfe] AWT, Swing, JavaFX & SWT 2
K Swing Konsolen Programm in GUI - Suche Hilfe bei Konsolenausgabe AWT, Swing, JavaFX & SWT 2
K Viele Textfield mit Hilfe eines MousListener leeren - möglich? AWT, Swing, JavaFX & SWT 8
I ausgewählte Zeile mit Hilfe der Tastatur löschen! AWT, Swing, JavaFX & SWT 3
Kenan89 Java FX GUI Hilfe für erste Java FX App AWT, Swing, JavaFX & SWT 8
B Rechteck Mit Hilfe Von Timeline, KeyFrames animieren AWT, Swing, JavaFX & SWT 3
J LayoutManager Hilfe bei Wahl des Layouts AWT, Swing, JavaFX & SWT 9
N Hilfe bei Memory-Spiel AWT, Swing, JavaFX & SWT 18
L Swing Hilfe bei JTabelModel gesucht AWT, Swing, JavaFX & SWT 4
B Hilfe zu JTable und JTabbedPane AWT, Swing, JavaFX & SWT 18
K Hilfe bei Labels AWT, Swing, JavaFX & SWT 3
T JLayeredPanel - Hilfe AWT, Swing, JavaFX & SWT 7
C Swing Hilfe bei umsetzung eines Stundenplans. AWT, Swing, JavaFX & SWT 7
N Hilfe bei Panels! AWT, Swing, JavaFX & SWT 11
F Swing Syntaxhighlighting Hilfe AWT, Swing, JavaFX & SWT 5
Jats Bitte um Hilfe bei JComboBox mit Array AWT, Swing, JavaFX & SWT 6
Jats Hilfe bei FocusListener für Taschenrechner AWT, Swing, JavaFX & SWT 4
N Swing nach Fensterrand Action ausführen? HILFE AWT, Swing, JavaFX & SWT 7
R Hilfe bei Bachelorrabeit. Seitenvorschau AWT, Swing, JavaFX & SWT 7
G Swing Hilfe-Fenster erstellen AWT, Swing, JavaFX & SWT 20
E LayoutManager Hilfe ein GridbagLayout!! AWT, Swing, JavaFX & SWT 7
K GUI-Hilfe für Anfänger AWT, Swing, JavaFX & SWT 15
J Schulprojekt und braucht hilfe AWT, Swing, JavaFX & SWT 54
G Hilfe! Command Pattern an easy ImageViewer? AWT, Swing, JavaFX & SWT 13
radiac Hilfe bei GUI AWT, Swing, JavaFX & SWT 22
N Hilfe bei erstellen eines Bibliotheksprogrammes AWT, Swing, JavaFX & SWT 15
H Swing Jtable wird nicht angezeigt..hilfe!! AWT, Swing, JavaFX & SWT 16
M DRINGEND HILFE TextPane RECHTSBÜNDIG AWT, Swing, JavaFX & SWT 2
B Swing Hilfe zu JTextField AWT, Swing, JavaFX & SWT 2
J Brauche ganz dringend Hilfe!!! AWT, Swing, JavaFX & SWT 5
V Bitte um Hilfe bei nem Taschenrechner AWT, Swing, JavaFX & SWT 8
F NullPointerException - HILFE!! AWT, Swing, JavaFX & SWT 20
G Hilfe!!!Sudoku AWT, Swing, JavaFX & SWT 19
M Swing JButton hilfe AWT, Swing, JavaFX & SWT 3
M brauche Hilfe um Einträge aus Jlist zu löschen AWT, Swing, JavaFX & SWT 4
Spin Hilfe - Erklärungsbedarf für Kreis AWT, Swing, JavaFX & SWT 5
O Bitte um Hilfe bei ComboBox in TableHeader AWT, Swing, JavaFX & SWT 9
M Erstellen eines Hilfe-Fenster bzw"Erste-Schritte" AWT, Swing, JavaFX & SWT 2
G Hilfe Meine JPanels verschwinden im Müll AWT, Swing, JavaFX & SWT 10
G Hilfe AWT, Swing, JavaFX & SWT 8
N ausrichtung Button - hilfe bitte AWT, Swing, JavaFX & SWT 2
T Hilfe zu Events? AWT, Swing, JavaFX & SWT 6
A Ini Datei Auswerten - HILFE! AWT, Swing, JavaFX & SWT 6
D Hilfe bei GUI-Elementen in Java AWT, Swing, JavaFX & SWT 9
D Grafikeinsteiger sucht/braucht Hilfe. Wäre Nett ! AWT, Swing, JavaFX & SWT 3
K Mein Informatikprojekt läuft aus dem Ruder Hilfe. F1 ^^ AWT, Swing, JavaFX & SWT 5
S Hilfe! Bekomme Daten nicht ausgelesen AWT, Swing, JavaFX & SWT 3
M hilfe! probleme mit meinem programm AWT, Swing, JavaFX & SWT 5
V Hilfe :( bekomme textarea nicht versetzt AWT, Swing, JavaFX & SWT 2
M Hilfe ich komme nicht an ein JTextArea AWT, Swing, JavaFX & SWT 4
J Hilfe CardLayout AWT, Swing, JavaFX & SWT 3
C Hilfe bei JInternalFrame AWT, Swing, JavaFX & SWT 6
G BubbleSort mit Hilfe einer Balkengrafik visualisieren AWT, Swing, JavaFX & SWT 9
G Leider trotz allem kein Icon :( Brauche Hilfe AWT, Swing, JavaFX & SWT 3
S sinuskurve hilfe! AWT, Swing, JavaFX & SWT 2
D JSplittPane - unsichtbarer Rahmen? hilfe ;) AWT, Swing, JavaFX & SWT 2
G Selbstprogrammierter Editor - brauche Hilfe AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen

Neue Themen


Oben