JavaFX Farben dynamisch anpassen

White_Fox

Top Contributor
Guten Abend allerseits

Folgendes:
Ich will in mein Programm ein Tutorial einbauen. Dieses Tutorial soll wie folgt funktionieren. Es gibt ein extra Fenster mit ein bisschen was zu lesen und zu klicken (Zurück, Abbrechen, Weiter), zusätzlich will ich in der GUI einzelne Elemente markieren. Wenn dem Benutzer erklärt wird das er eine Datei öffnen soll, will ich das z.B. oben in der Menüleiste das entsprechende MenuItem in einer signalartigen Akzentfarbe eingefärbt wird. Hat der Benutzer die Aktion erfolgreich abgeschlossen, bekommt das MenuItem seine alte Farbe zurück.

Die Akzentfarbe will ich in der CSS-Datei definieren, ich meine auch herausgekriegt zu haben wie das funktioniert. Aber wie kann ich einem existierenden MenuItem sagen daß es diese neue Farbe annehmen soll?
Versuche wie:

[CODE lang="css" title="CSS-Datei"]/*...*/

/* First test color
*/
-jcls-testcolor: #c69600;

/*...*/[/CODE]

[CODE lang="java" title="Irgendwo im GUI-Code"]private MenuItem fileOpenLibrary;

//...

private void changeColor(){
fileOpenLibrary.getGraphic().setStyle("-jcls-testcolor");
}[/CODE]

Führt nur zu Fehlern.

Hat jemand eine Idee?

PS: Ich möchte später mehrere CSS-Dateien haben, wo z.B. "-jcls-testcolor" durchaus unterschiedliche Werte haben kann.
 
Zuletzt bearbeitet:

lam_tr

Top Contributor
Guten Abend allerseits

Folgendes:
Ich will in mein Programm ein Tutorial einbauen. Dieses Tutorial soll wie folgt funktionieren. Es gibt ein extra Fenster mit ein bisschen was zu lesen und zu klicken (Zurück, Abbrechen, Weiter), zusätzlich will ich in der GUI einzelne Elemente markieren. Wenn dem Benutzer erklärt wird das er eine Datei öffnen soll, will ich das z.B. oben in der Menüleiste das entsprechende MenuItem in einer signalartigen Akzentfarbe eingefärbt wird. Hat der Benutzer die Aktion erfolgreich abgeschlossen, bekommt das MenuItem seine alte Farbe zurück.

Die Akzentfarbe will ich in der CSS-Datei definieren, ich meine auch herausgekriegt zu haben wie das funktioniert. Aber wie kann ich einem existierenden MenuItem sagen daß es diese neue Farbe annehmen soll?
Versuche wie:

[CODE lang="css" title="CSS-Datei"]/*...*/

/* First test color
*/
-jcls-testcolor: #c69600;

/*...*/[/CODE]

[CODE lang="java" title="Irgendwo im GUI-Code"]private MenuItem fileOpenLibrary;

//...

private void changeColor(){
fileOpenLibrary.getGraphic().setStyle("-jcls-testcolor");
}[/CODE]

Führt nur zu Fehlern.

Hat jemand eine Idee?

PS: Ich möchte später mehrere CSS-Dateien haben, wo z.B. "-jcls-testcolor" durchaus unterschiedliche Werte haben kann.
Kann man nicht einfach StyleClass austauschen? So in die Richtung

Am Anfang mit
rootNode.getStylesheets().add("app-test.css");

Und nach Tutorial
rootNode.getStylesheets().clear();
rootNode.getStylesheets().add("app.css");

Ist an sich eine voll coole Idee. Ich mein DIrk Lemmermann hatte auch in eine bestimmte App auch so eine Szene eingebaut womit einzelne Bereiche definiert werden. Ich kann das Video mal wenn ich es gefunden haben hierein posten.
 

White_Fox

Top Contributor
Alles klar, ich hab es hinbekommen.

Ich habe testweise mal das originale Modena-CSS heruntergeladen und etwas geändert. Dort gibt es z.B. einen Eintrag für ein MenuItem:
CSS:
.menu-item {
    -fx-background-color: transparent;
    -fx-padding: 0.333333em 0.41777em 0.333333em 0.41777em;  /* 4 5 4 5 */
}

/*Von mir ergänzt:*/
.markdemenu-item {
    -fx-background-color: red;
    -fx-padding: 0.333333em 0.41777em 0.333333em 0.41777em;  /* 4 5 4 5 */
}

Und wenn ich jetzt dort, wo ich die Menüleiste initialisiere folgende Zeilen einfüge:
Java:
private MenuItem fileOpenLibrary;

//...

fileOpenLibrary.getStyleClass().clear();
fileOpenLibrary.getStyleClass().add("markdemenu-item");

dann ist das betreffende Item tatsächlich rot. Prima, vielen Dank. :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A AWT HSB-Farben dynamisch berechnen AWT, Swing, JavaFX & SWT 5
S Farben eienr JTextPane dynamisch zuweisen AWT, Swing, JavaFX & SWT 2
L JavaFX Fehler beim setzen von Farben AWT, Swing, JavaFX & SWT 16
J AWT System Farben / java.awt.SystemColor funktioniert nicht AWT, Swing, JavaFX & SWT 4
M UIManager funktioniert nicht mit Farben AWT, Swing, JavaFX & SWT 9
M Swing UIManager funktioniert nicht mit Farben AWT, Swing, JavaFX & SWT 0
T AWT Farben in einem Bild ändern AWT, Swing, JavaFX & SWT 8
M AWT Farben in Bild ersetzen AWT, Swing, JavaFX & SWT 11
B Bild bearbeiten mit Transparenz (spiegeln, Farben austauschen) AWT, Swing, JavaFX & SWT 8
O keine ähnliche Farben durch Random in Java AWT, Swing, JavaFX & SWT 21
E JTable farben ändern AWT, Swing, JavaFX & SWT 2
T Kontrast zweier Farben vergleichen AWT, Swing, JavaFX & SWT 5
J Auf die im Look and Feel eingestellten Farben zugreifen AWT, Swing, JavaFX & SWT 2
M Swing Zweidimensionales Array mit Farben erzeugen AWT, Swing, JavaFX & SWT 16
C JTable: Mehrere Farben in einer Zelle darstellen AWT, Swing, JavaFX & SWT 10
T bei einem jtextfield Farben benutzen AWT, Swing, JavaFX & SWT 7
K Farben in JMenues AWT, Swing, JavaFX & SWT 2
K Farben bei JMenus AWT, Swing, JavaFX & SWT 5
D Farben JList AWT, Swing, JavaFX & SWT 4
F Farben in Textpane AWT, Swing, JavaFX & SWT 14
D ComboBox mit Farben aus java.awt.color AWT, Swing, JavaFX & SWT 4
T Die Schrift in verschiedenen Farben blinken zu lassen AWT, Swing, JavaFX & SWT 2
G Knoten im Jtree mit unterscheidlichen Farben darstellen AWT, Swing, JavaFX & SWT 5
T verschiedene Farben in einem Text/Editfeld AWT, Swing, JavaFX & SWT 11
C Farben in BufferedImage ändern ? AWT, Swing, JavaFX & SWT 2
V Farben setzen bei einigen Komponenten (JScrollBar, . AWT, Swing, JavaFX & SWT 3
M Farben im TextArea AWT, Swing, JavaFX & SWT 5
T extends JButton übernehmen Farben AWT, Swing, JavaFX & SWT 4
S RGB Farben addieren AWT, Swing, JavaFX & SWT 1
B JList Zeilen in verschiedenen Farben markieren. AWT, Swing, JavaFX & SWT 3
K JTextArea mit verschiedenen Farben betreiben [Chat] AWT, Swing, JavaFX & SWT 3
G JTextArea.append() in verschiedenen Farben AWT, Swing, JavaFX & SWT 2
M Image: Kontrast, Helligkeit und Farben ändern? AWT, Swing, JavaFX & SWT 15
Icewind Verschiedene Farben in einer JTextArea AWT, Swing, JavaFX & SWT 3
W Editor Syntax Farben AWT, Swing, JavaFX & SWT 2
R Farben ändern AWT, Swing, JavaFX & SWT 2
B Größe der Parent-Component dynamisch an children anpassen AWT, Swing, JavaFX & SWT 30
K Buttons dynamisch erstellen (NetBeans) AWT, Swing, JavaFX & SWT 10
ralfb1105 JavaFX TreeView dynamisch aus Datenbank Tabelle erstellen AWT, Swing, JavaFX & SWT 22
ralfb1105 JavaFX Dynamisch TableView Spalten erstellen AWT, Swing, JavaFX & SWT 4
A Swing JPanels dynamisch untereinander einfügen AWT, Swing, JavaFX & SWT 3
Wurstsemmel SWT MenuItem dynamisch hinzufügen AWT, Swing, JavaFX & SWT 2
L JavaFX List oder TableView Größe dynamisch anpassen? AWT, Swing, JavaFX & SWT 4
MaxG. Swing Dynamisch grafische Objekte erzeugen AWT, Swing, JavaFX & SWT 12
Thallius JTable dynamisch Spaltenanzahl verändern AWT, Swing, JavaFX & SWT 2
Thallius JTable dynamisch laden? AWT, Swing, JavaFX & SWT 2
S CombinedDomainXYPlot und dynamisch hinzugefügte subplots: Darstellungsprobleme AWT, Swing, JavaFX & SWT 3
K Liniendicke für Line Chart dynamisch ändern AWT, Swing, JavaFX & SWT 0
N Swing Wie Programm strukturieren? (Dynamisch Komponenten hinzufügen) AWT, Swing, JavaFX & SWT 1
llabusch JavaFX Dynamisch alles vergrößern (wie im Browser) AWT, Swing, JavaFX & SWT 3
agent47 JavaFX TreeView Struktur dynamisch einlesen AWT, Swing, JavaFX & SWT 1
D JavaFX Dynamisch erzeugte Buttons sollen Code ausführen. AWT, Swing, JavaFX & SWT 2
D JavaFX Dynamisch erzeugte Checkboxen aus VBox auslesen AWT, Swing, JavaFX & SWT 3
J Swing/AWT | Dynamisch erzeugte Objekte ansprechen AWT, Swing, JavaFX & SWT 1
I JTable dynamisch aus ArrayList befüllen AWT, Swing, JavaFX & SWT 3
T JavaFX Flexible Layouts dynamisch erstellen / Design-Inspirationen AWT, Swing, JavaFX & SWT 8
T Dynamisch mehrere Checkboxen anlegen AWT, Swing, JavaFX & SWT 2
J JavaFX TextArea dynamisch Icon im Background anzeigen AWT, Swing, JavaFX & SWT 2
T JPanel dynamisch erstellen AWT, Swing, JavaFX & SWT 4
G FormLayout dynamisch wachsend AWT, Swing, JavaFX & SWT 0
T JTable dynamisch mit ArrayList AWT, Swing, JavaFX & SWT 2
A Swing Logikaufgabe: Zeilenanzahl einer JTable mit 3d String dynamisch anpassen AWT, Swing, JavaFX & SWT 2
T Swing JScrollPane in JPanel - Breite dynamisch, Höhe fix - wie? AWT, Swing, JavaFX & SWT 2
P TableViewerColumn dynamisch erzeugen AWT, Swing, JavaFX & SWT 3
Kandum obj_JMenu.addMenuListener - variable Anzahl an JMenus / menulistenern & frame.setTitle() dynamisch AWT, Swing, JavaFX & SWT 7
A HELP: JFieldText dynamisch setzen -> langsam AWT, Swing, JavaFX & SWT 19
C Swing CardLayout dynamisch erweitern AWT, Swing, JavaFX & SWT 11
B Link eines Icons dynamisch gestalten AWT, Swing, JavaFX & SWT 2
P ScrollPane nach zeichnen dynamisch resize AWT, Swing, JavaFX & SWT 7
B JToolBar dynamisch auf mehrere Zeilen erweitern AWT, Swing, JavaFX & SWT 2
I Jlist dynamisch aus Datenbank füllen AWT, Swing, JavaFX & SWT 14
P Gifs dynamisch auf GUI anzeigen AWT, Swing, JavaFX & SWT 4
E Breite eines JButton dynamisch ändern AWT, Swing, JavaFX & SWT 3
P Swing Dynamisch zeichnen mit Shapes wie Rectangle2D.Float ? AWT, Swing, JavaFX & SWT 6
C SWT - widget dynamisch erzeugen und anzeigen AWT, Swing, JavaFX & SWT 10
C Tooltip dynamisch setzen AWT, Swing, JavaFX & SWT 7
T Elemente zu JList dynamisch hinzufügen AWT, Swing, JavaFX & SWT 4
X jTextFields dynamisch initialisieren AWT, Swing, JavaFX & SWT 2
A Swing Dynamisch Objekte erzeugen AWT, Swing, JavaFX & SWT 3
L Label dynamisch awt AWT, Swing, JavaFX & SWT 2
H Swing Symbol in Taskleiste dynamisch aus- bzw. einblenden AWT, Swing, JavaFX & SWT 14
B JTabbedPane mit Enumeration dynamisch füllen AWT, Swing, JavaFX & SWT 5
L Dynamisch Objekte in Canvas zeichnen AWT, Swing, JavaFX & SWT 5
D Panels Dynamisch zur Laufzeit austauschen AWT, Swing, JavaFX & SWT 2
J Java 2D - dynamisch zeichnen AWT, Swing, JavaFX & SWT 4
P Dynamisch Sortieren AWT, Swing, JavaFX & SWT 2
B Swing Dynamisch Elemente in JScrollPane hinzufügen AWT, Swing, JavaFX & SWT 6
Airwolf89 Swing Dynamisch auf Objekte in einer GUI zugreifen AWT, Swing, JavaFX & SWT 10
Airwolf89 Swing Tabs dynamisch ausblenden AWT, Swing, JavaFX & SWT 3
H Swing Register (jTabbedPane) dynamisch hinzufügen? AWT, Swing, JavaFX & SWT 7
Airwolf89 Swing Anzahl der Tabellenspalten dynamisch setzen AWT, Swing, JavaFX & SWT 2
S SWT WizardPage - Button anzeigen und Text-Widgets dynamisch aktualisieren AWT, Swing, JavaFX & SWT 12
R JLabel und JSlider dynamisch erzeugen? AWT, Swing, JavaFX & SWT 3
W Swing dynamisch Buttons in JEditorPane erstellen AWT, Swing, JavaFX & SWT 2
Pithecanthropus Swing JPanels dynamisch austauschen AWT, Swing, JavaFX & SWT 8
S Applet mit Graphics dynamisch vergrößern AWT, Swing, JavaFX & SWT 3
Spot84 jtable mit checkboxnode dynamisch per arraylist füllen AWT, Swing, JavaFX & SWT 8
bugmenot Dynamisch erzeugte jLabels werden nicht angezeigt. AWT, Swing, JavaFX & SWT 5
ABstraCT JCombobox dynamisch füllen (erstes Element Problem) AWT, Swing, JavaFX & SWT 4
J JLabels usw. dynamisch anlegen AWT, Swing, JavaFX & SWT 8

Ähnliche Java Themen

Neue Themen


Oben