javaFX mit Elementen

Juelin

Bekanntes Mitglied
Hallo,
ich benutze jdk-21, javaFX-13 und Apache-Netbeans IDE 21 auf Windows 10.
ich lerne gerade Java und habe mein erstes Projekt in javaFX gemacht.
Es ist ein einfaches Fenster mit einem Label (siehe Anhang bild1).
Dabei finde ich einige Dinge nicht, die ich gerne hätte.
Ihr müßt entschuldigen, aber ich komme von Delphi und da ist alles einfacher.
1. Im Fenster würde ich gerne die Hintergrundfarbe setzen. Die Methoden im Programm funktionieren nicht. (siehe Anhang App.java).
var scene = new Scene(fenster, 480, 480, Color.BLUE);
scene.setFill(Color.BLACK);
2. Kann ich bei dem Fenster die Eigenschaft "Visible" setzen und wie.
3. Bei dem Label möchte ich gerne folgende Eigenschaften setzen:
X-Position
Y-Position
Höhe
Breite
Habe schon im Internet gesucht, aber nix gefunden.
Für Hilfe wäre ich dankbar.
Alles Gute und Gruß
Jürgen
 

Anhänge

  • bild1.jpg
    bild1.jpg
    93,3 KB · Aufrufe: 0
  • App.java
    2,3 KB · Aufrufe: 0

Ernesto95

Aktives Mitglied
Moin Juelin,

erst einmal herzlich willkommen auch von mir hier im Forum !

1.+3
Ich bin mir ehrlich gesagt gerade gar nicht so sicher ob man den Hintergrund einer Scene setzen kann. Aber du kannst den Hintergrund der Pane setzen, die du der Scene zuweist. Das machst du aber in JavaFX am besten nicht im Code, sondern in einer separaten CSS Datei.

Der Stage oder der Pane weist du eine Stylesheet Datei zu, in dieser definierst du dann die Hintergrundfarbe.

Von absoluter Positioierung würde ich dir bis auf wenige Ausnahmen abraten, wenn sich die Fenstergröße ändert sieht das meistens sehr blöd aus. Besser ist es LayoutContainer zu verwenden. DerAnchorPane kommt hier einer absolute Positionierung am nähesten, hier kannst du deine Nodes absolut in Relation zu einem Anker Positionieren. In diesem Beispiel 100px Abstand nach oben und 50px Abstand nach rechts.

Java:
public void start(Stage primaryStage) {

        AnchorPane root = new AnchorPane();
        Label label = new Label("Hello, World!");
        AnchorPane.setTopAnchor(label, 100.0);
        AnchorPane.setRightAnchor(label, 50.0);

        root.getChildren().add(label);
        root.getStylesheets().add(getClass().getClassLoader()
                .getResource("styles.css").toExternalForm());

        Scene scene = new Scene(root, 300, 250);

        primaryStage.setTitle("JavaFX Window");
        primaryStage.setScene(scene);
        primaryStage.show();
    }

CSS:
.root {
    -fx-background-color: #yourcolor;
}

3
Das "Visible" eines Fensters steuerst du über die Methoden stage.show() bzw. stage.hide();

Allgemein:
Ich empfehle dir die GUI nicht im Java Code sondern über den SceneBuilder zu erstellen. Das ist alles deutlich übersichtlicher und du hast eine saubere Trennung im Code bzgl. View und Controller


Ebenfalls empfehlen (aber das ist eine religiöse Frage und da bekommst du bei jedem Programmierer eine andere Antwort) würde ich dir IntelliJ von Jetbrains. Die kostenlose Version ist vollkommen ausreichend, wenn du bereit bist 10 EUR im Monat zu zahlen ist aber der KI-Assistent eine extrem hilfreiche Zusatzfuktion.
 

Ernesto95

Aktives Mitglied
Ach ja, bei richtig viel Code ist es besser diesen als Anlage beizufügen, bei weniger Code wie in deinem Beispiel aber ist es für die Nutzer angenehmer diesen direkt im Postu sehen. Hierfür dann die Code Tags nutzen, die findet du beim erstellen eines Posts im Menuband ganz links, gekennzeichnet als </>
 

Juelin

Bekanntes Mitglied
Habe inzwischen (mit Hilfe vpm Buch) rausgefunden wie es geht.
Beispiel anbei.
Danke und Gruß
Jürgen
 

Anhänge

  • App.java
    4,6 KB · Aufrufe: 0

Ernesto95

Aktives Mitglied
Wenn es klappt super, Erfolgserlebnisse sind am Anfang am wichtigsten.

Ich kenne das Buch jetzt nicht, daher weiß ich nicht wie die Kapitel aufgebaut sind und ob du demnach an diesem Punkt noch nicht bist, aber an deinem Code fallen mir 3 Dinge sofort auf:

1. Schau dir dringend das Thema CSS in JavaFX an, so das du die ganzen Design Sachen aus dem Code bekommst, sonst wird es mit wachsender GUI bald sehr unübersichtlich.

2. Gleiches gilt für das Thema SceneBuilder / FXML in Java FX. Es bringt große Vorteile die GUI Erstellung und den Java Code zu trennen, so bekommt man ein gutes MVC oder ähnliches hin.

3. Nicht alles in eine Methode packen, sondern die Aufgaben in einzelne Abschnitte aufteilen und dann in separate Methoden aufsplitten.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Juelin Netbeans mit JavaFX, FXML und Scenebuilder Java Basics - Anfänger-Themen 11
Juelin Netbeans und javafx Java Basics - Anfänger-Themen 6
M Wo den Ordner javafx-sdk-21.0.2 unter Linux ablegen? Java Basics - Anfänger-Themen 5
A Kapazität JavaFX TextField Java Basics - Anfänger-Themen 4
L JavaFX - grundlegende Verständnisprobleme Java Basics - Anfänger-Themen 1
S JavaFX Java Basics - Anfänger-Themen 1
A JavaFX-Anwendung läuft nicht mit Selenium WebDriver Java Basics - Anfänger-Themen 0
A JavaFX Toggle_Button_Disable Java Basics - Anfänger-Themen 2
ac83 JavaFX - Kompilierungsproblem Java Basics - Anfänger-Themen 1
R Intellij javafx --> jar Java Basics - Anfänger-Themen 11
O Compiler-Fehler JavaFX fmxl LoadExeption Java Basics - Anfänger-Themen 4
M Javafx Timeline Java Basics - Anfänger-Themen 2
sserio Wieso funktioniert mein TableView nicht /JavaFX. Java Basics - Anfänger-Themen 4
A JavaFX-Filechooser Java Basics - Anfänger-Themen 5
H JavaFX Hintergrundfarbe ändern, warten, Hintergrundfarbe wieder ändern Java Basics - Anfänger-Themen 34
A JavaFx - SceneBuilder Java Basics - Anfänger-Themen 5
S JavaFX - Objekt an neue Stage übergeben Java Basics - Anfänger-Themen 12
G Javafx Eventhandler zu jedem Node Java Basics - Anfänger-Themen 1
T Elemente aus Array zu TableView JavaFX übertragen Java Basics - Anfänger-Themen 2
T HTMLEditor JavaFX Java Basics - Anfänger-Themen 4
E JavaFX Editor Probleme mit der Zwischenablage Java Basics - Anfänger-Themen 12
E JavaFX Taschenrechner Eingabe im Textfield beschränken Java Basics - Anfänger-Themen 2
D Mit Objekten rechnen, Textfield, JavaFX, Noob Java Basics - Anfänger-Themen 8
P Probleme bei der Installation von JavaFX Java Basics - Anfänger-Themen 3
R Umsetzungsplan JavaFx App Java Basics - Anfänger-Themen 9
M JavaFX- Verschiedene Stages Java Basics - Anfänger-Themen 1
P JavaFx einrichten Java Basics - Anfänger-Themen 6
Torsten.E JavaFX mit Visual Studio Code verwenden Java Basics - Anfänger-Themen 1
P JavaFX: Verständnisproblem bei ComboBox/ChoiceBox etc. Java Basics - Anfänger-Themen 9
T Javafx ListView kann nicht gefüllt werden. Java Basics - Anfänger-Themen 6
D JAVAFX WebVIEW zu JSOUP Java Basics - Anfänger-Themen 3
D Folgende Fehlermeldung bei der Installation von JAVAFX Java Basics - Anfänger-Themen 1
S JavaFX-Arduino Kommunikation mit LCD-Anzeige Java Basics - Anfänger-Themen 0
B java.lang.NullPointerException bei javafx Java Basics - Anfänger-Themen 10
J javafx mediaplayer mit https Java Basics - Anfänger-Themen 3
J JavaFX Label,Button zur Laufzeit Java Basics - Anfänger-Themen 30
D Ausführbare jar/exe aus JAVAFX Projekt erstellen (IntelliJ) Java Basics - Anfänger-Themen 14
O JavaFX XML Versuch Java Basics - Anfänger-Themen 2
O JavaFX Java Basics - Anfänger-Themen 7
M JavaFX-Übung Autospiel Java Basics - Anfänger-Themen 4
M JavaFX: Fenster bleibt weiß Java Basics - Anfänger-Themen 3
L Klassen NFC Reader und JavaFx Problem -> threads? Java Basics - Anfänger-Themen 2
J Aktuelle Zeit in einer JavaFX Anwendung aktualisieren lassen Java Basics - Anfänger-Themen 4
L JavaFx ListView rechts abgeschnitten Java Basics - Anfänger-Themen 0
I Javafx Tabpane Reiter blockieren Java Basics - Anfänger-Themen 1
S JavaFX Beginneraufgabe Java Basics - Anfänger-Themen 1
W JavaFX import Fehler/Zellularautomaten Java Basics - Anfänger-Themen 1
Spencer Reid JavaFX Memory Thread.sleep Java Basics - Anfänger-Themen 1
CptK mit javafx button erstellen Java Basics - Anfänger-Themen 1
U Javafx Array aus Buttons Java Basics - Anfänger-Themen 2
D JavaFX Vererbung Java Basics - Anfänger-Themen 2
E JAvaFX: Verschiedene Panels nach Klick auf Node des TreeView anzeigen Java Basics - Anfänger-Themen 0
K Erste Schritte JavaFX - wie von "externer" Klasse auf Methoden des Controllers zugreifen Java Basics - Anfänger-Themen 2
J JavaFX -> SocketIO -> Thread -> Update Label Java Basics - Anfänger-Themen 13
D JavaFX, Verweis auf Datei im Projekt Java Basics - Anfänger-Themen 0
M JavaFX in Swing-Applikationen einbetten Java Basics - Anfänger-Themen 5
M JavaFX: Problem mit der TableView Java Basics - Anfänger-Themen 0
P JavaFX ohne FXMLLoader Java Basics - Anfänger-Themen 3
K JavaFX UI controls Java Basics - Anfänger-Themen 1
B Farbverlauf erstellen ohne Javafx, AWT usw.? Java Basics - Anfänger-Themen 34
H Best Practice JavaFX TableView mit Zell-Rahmen anstelle von Zeilen-Balken Java Basics - Anfänger-Themen 1
M Ausgabe eines Arrays auf Label (Javafx) Java Basics - Anfänger-Themen 4
K Threads Multithread in JavaFx Java Basics - Anfänger-Themen 11
R Threads in JavaFX Java Basics - Anfänger-Themen 3
N JavaFX - (Controller) - Klasse verkleinern Java Basics - Anfänger-Themen 8
U JavaFX eine Vbox Instanz pro Pane? Java Basics - Anfänger-Themen 2
Spencer Reid JavaDoc zu JavaFx hinzufügen Java Basics - Anfänger-Themen 1
V wie kann man am einfachsten für ein Element der JavaFX die Umrandung aktiwieren ? auch ohne css ? Java Basics - Anfänger-Themen 4
D OOP JavaFX objektorientiert Java Basics - Anfänger-Themen 2
V Interface ich schäme mich das zu fragen, aber ich schaff nicht ein Text zu zentrieren :( [javaFX] Java Basics - Anfänger-Themen 6
P JavaFX - Komponenten skalieren Java Basics - Anfänger-Themen 16
P JavaFX Textfelder geben immer null zurück Java Basics - Anfänger-Themen 8
P JavaFX TextArea.setText Java Basics - Anfänger-Themen 13
F javafx.fxml.LoadException: Root hasn't been set. Java Basics - Anfänger-Themen 0
J JavaFX aus Java-Application heraus starten Java Basics - Anfänger-Themen 7
T Swing, SWT oder JavaFX Java Basics - Anfänger-Themen 8
S [JavaFX 2.1] - Eigene Sprachauswahl? Java Basics - Anfänger-Themen 4
D Javafx XYChart Variable in Schleife erzeugen? Java Basics - Anfänger-Themen 18
E JavaFX und Java auf Kommandozeile compilen Java Basics - Anfänger-Themen 2
J Webanwendung JavaFX Java Basics - Anfänger-Themen 4
Povlsen84 [javafx] Zusammenarbeit mit Tomcat Java Basics - Anfänger-Themen 4
M Queue-Datenstruktur: nach dem Elementen entfernen, das Ergebnis ist immer noch nicht optimal. Java Basics - Anfänger-Themen 3
NeoLexx Fragen zu diversen Elementen der Javabibliothek Java Basics - Anfänger-Themen 5
G Linked list, Methode zum Vertauschen von Elementen Java Basics - Anfänger-Themen 14
D Alle Möglichkeiten, n-Anzahl aus Elementen aus einem Array zu wählen, ausgeben? Java Basics - Anfänger-Themen 23
D JAXB - flexibles Mappen von Elementen Java Basics - Anfänger-Themen 12
M Array mit "n" Elementen Java Basics - Anfänger-Themen 2
H Array vertauschen von 2 Elementen Java Basics - Anfänger-Themen 3
M Kumulieren von Elementen in einen Array Java Basics - Anfänger-Themen 8
F Collections Sortierung und Einfügen von Elementen Java Basics - Anfänger-Themen 1
V Anlegen eines 2 dim Array mit Point Elementen Java Basics - Anfänger-Themen 3
M aus x Elementen y Elemente auswählen Java Basics - Anfänger-Themen 6
J Problem beim Löschen von elementen aus einer ArrayList Java Basics - Anfänger-Themen 5
Z Summe von Vektor-Elementen Java Basics - Anfänger-Themen 5
L for each schleife und löschen von elementen Java Basics - Anfänger-Themen 8
A Hinzufügen von Elementen in ArrayList Java Basics - Anfänger-Themen 2
I Probleme beim adden von Elementen in einer ArrayList Java Basics - Anfänger-Themen 10
A Anordnung von JList Elementen Java Basics - Anfänger-Themen 3
K mittlere von 3 Elementen Java Basics - Anfänger-Themen 3
G Einfügen von Elementen in Baumstruktur Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben