JavaFX Scenebuilder eigene Komponenten

MarkusM

Aktives Mitglied
Hallo zusammen,

ich bin gerade dabei mir ein JavaFX TextField so umzubauen, dass dort nur valide Zahlenwerte erfasst werden können. Dazu habe ich eine Klasse "NumericTextField" geschrieben, welche ein TextField erweitert (extends Textfield) und dort mit ActionListenern arbeitet. Soweit so gut.

Nun möchte ich allerdings dieses NumericTextField auch im SceneBuilder benutzen. Hat jemand eine Idee ob und wie ich dieses dort den Komponenten hinzufügen kann?

Viele Grüße

Markus
 

MarkusM

Aktives Mitglied
Hallo Christian,

ich habe es so hinbekommen, dass ich meine Javaanwendung mit dem NumericTextField zu einem JAR "kompiliert" habe. Dann einfach im SceneBuilder auf das kleine Zahnrad klicken und mit "Import JAR/FXML File..." das JAR File auswählen. Nun erscheint ein Dialog der offensichtlich alle JavaFX Controls des JARs enthält (können auch mehrere sein), welche durch Anklicken ausgewählt werden können. => Fertig, nun stehen die Custom Controls - in meinem Fall das NumericTextField - zur Verfügung und FXML-Files mit dieser Control können geöffnet, bearbeitet und erstellt werden!

Die JAR Datei wird übrigens in das Library-Verzeichnis vom SceneBuilder gespeichert und steht ab sofort im SceneBuilder immer zur Verfügung. Das Entfernen geht über den Menüpunkt "Custom Library Folder / Reveal in Explorer", dort dann einfach das entsprechende JAR löschen. (Achtung! Unbedingt die neuste Version des SceneBuilders verwenden, sonst gibt es den Menüpunkt bzw. das kleine Zahnradsymbol nicht und man sucht sich die Hacken ab! Ich sprech da aus Erfahrung :lol:)

So habe ich die Geschichte zumindest gelöst. Ich weiß allerdings nicht, ob es vielleicht noch andere Wege und Möglichkeiten gibt.

Viele Grüße

Markus
 
Zuletzt bearbeitet:

Maxi62

Aktives Mitglied
Wie sieht denn die FXML-Datei in deinem JAR File aus? Mich würde mal interessieren wie die Controllerdatei und FXML genau ausehen muss damit der der Scene Builder damit klar kommt. Ich hab auch ein validate Textfeld, weiß nur nicht wie ich es im Scene Builder sichtbar machen soll. Ich jann doch nicht ganze FX-Applikation als JAR importieren, da ist doch einiges drin was der Scene Builder gar nicht braucht.
 

Maxi62

Aktives Mitglied
Das Prinzip ist mir schon klar , aber wie muss die Klasse aussehen?
Mal ein einfaches Beispiel, ich erstelle ein ZahlenTextfeld , eine Klasse die vom Textfiled erbt.
Das sind ja nur ein paar Zeilen, sieht man unten. Wenn ich nur diese Klasse kompiliere und in JAR packe und in SceneBuilder lade passiert garnix, der kann sie immer noch nicht darstellen.
Also wie mache ich konkret aus dieser einfachen Klasse ein Textfeld das auch im Scenebuilder angezeigt wird?

Java:
import javafx.scene.control.TextField;

public class ZahlenTextfeld extends TextField {
    
    @Override public void replaceText(int start, int end, String text) {
           if (text.matches("[0-9]") || text == "") {
               super.replaceText(start, end, text);
           }
       }
     
       @Override public void replaceSelection(String text) {
           if (text.matches("[0-9]") || text == "") {
               super.replaceSelection(text);
           }
       }
}
 
Zuletzt bearbeitet von einem Moderator:

MarkusM

Aktives Mitglied
Hallo Maxi,

sorry, für die späte Antwort...

Ich mache es immer so, dass ich ein kleines JavaFX Projekt erstelle (Main, Controller, FXML) und der gewünschten Komponente. Hieraus erstelle ich dann ein JAR-File, welches ich im SceneBuilder importiere. Danach steht die Komponente unter "Custom" zur Verfügung und kann genutzt werden.

Man kann natürlich die überflüssigen Dinge aus dem "Projekt" entfernen und nur die Klasse zum JAR builden und diese dann im SceneBuilder importieren. (Habe ich mit Deiner Klassse probiert und das geht reibungslos!).

Zur Zeit gehe ich den Weg, dass ich mir ein Projekt angelegt habe, welches die ganzen SceneBuilder-Erweiterungen enthält. Für mich hat den Vorteil, dass ich bei Änderungen direkt im Projekt testen kann und die Erweiterungen dann im SceneBuilder einfach aktualisiere.

Ich hoffe, dies hilft Dir etwas weiter, ansonsten kannst Du Dich gerne nochmal melden.

Viele Grüße

Markus
 

Maxi62

Aktives Mitglied
Also ich meine das habe ich auch schon probiert und hat nicht geklappt.
Kannst du mal deine Main Klasse zu dem oberen Beispiel Zahlenfeld posten?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Eigene Klasse auf Basis Textfield in SceneBuilder anzeigen AWT, Swing, JavaFX & SWT 4
Juelin StringGrid in SceneBuilder und javaFX AWT, Swing, JavaFX & SWT 2
Juelin JavaFX Netbeans Aufruf Funktion aus Scenebuilder AWT, Swing, JavaFX & SWT 8
Juelin SceneBuilder und Objektname AWT, Swing, JavaFX & SWT 11
MiMa Darstellung von FXML ateien nicht korrekt (SceneBuilder) AWT, Swing, JavaFX & SWT 2
Encera TableView Zeilen als Spalten im SceneBuilder AWT, Swing, JavaFX & SWT 0
berserkerdq2 Wie greife ich auf ein Element zu, welches ich beim Scenebuilder erstellt habe AWT, Swing, JavaFX & SWT 10
berserkerdq2 Wie füge ich ein Bild in javafx mit dem Scenebuilder ein, das automatisch mitgezogen wird, wenn das Fenster vergrößert wird oder Vollbildmodus AWT, Swing, JavaFX & SWT 6
thor_norsk JavaFX, FXML und SceneBuilder AWT, Swing, JavaFX & SWT 6
melaniemueller JavaFX Taschenrechner mit SceneBuilder AWT, Swing, JavaFX & SWT 12
L JavaFX JavaFX, MVVM und SceneBuilder AWT, Swing, JavaFX & SWT 4
C JavaFX Veränderungen in Scenebuilder in Eclipse als Quellcode anzeigen lassen AWT, Swing, JavaFX & SWT 11
S SceneBuilder gridpane erweitern AWT, Swing, JavaFX & SWT 0
K JavaFX Fenstergröße ändert sich (Gluon - SceneBuilder) AWT, Swing, JavaFX & SWT 23
J Bilder aus dem SceneBuilder werden in der Jar nicht dargestellt AWT, Swing, JavaFX & SWT 4
N SceneBuilder wie auf Attribute zugreifen? Diese sind immer null. AWT, Swing, JavaFX & SWT 6
C JavaFX Edit TableView in Verbindung mit SceneBuilder AWT, Swing, JavaFX & SWT 1
F FXML Datei aus dem SceneBuilder in Eclipse aufrufen AWT, Swing, JavaFX & SWT 1
J SceneBuilder TableView Checkbox AWT, Swing, JavaFX & SWT 1
emma_louisa JavaFX Werte beim Aufrufen des Fensters übernehmen (SceneBuilder) AWT, Swing, JavaFX & SWT 3
B Java FX FXML Textarea SceneBuilder als XML Editor AWT, Swing, JavaFX & SWT 1
M Java FX SceneBuilder 2.0, FXML, Controller AWT, Swing, JavaFX & SWT 1
J JavaFx/SceneBuilder/Felder beim verlassen prüfen AWT, Swing, JavaFX & SWT 1
Tom299 JavaFX SceneBuilder download AWT, Swing, JavaFX & SWT 7
P JavaFX SceneBuilder 2.0 AWT, Swing, JavaFX & SWT 7
V JavaFX SceneBuilder startet nicht AWT, Swing, JavaFX & SWT 18
A Drag and Drop mit JAVAFX- Scenebuilder AWT, Swing, JavaFX & SWT 1
H JavaFx - SceneBuilder - Connect ControllerClass AWT, Swing, JavaFX & SWT 0
R JavaFX Mein SceneBuilder Projekt AWT, Swing, JavaFX & SWT 3
M eigene GUI Bibliothek erstellen. AWT, Swing, JavaFX & SWT 8
M Eigene Java Klasse für allgemeine Grafikelemente AWT, Swing, JavaFX & SWT 8
H MouseAdapter Klasse nutzen wenn eigene Klasse bereits von anderer erbt AWT, Swing, JavaFX & SWT 13
Jose05 JavaFX: eigene FXML-Datei für einen Button AWT, Swing, JavaFX & SWT 3
V Swing für jedes Kästchen eine eigene Farbe AWT, Swing, JavaFX & SWT 2
L JavaFX Eigene Font benutzen AWT, Swing, JavaFX & SWT 6
B Notepad++ in die eigene GUI einbinden AWT, Swing, JavaFX & SWT 7
B JavaFX Bild um die eigene Achse drehen lassen AWT, Swing, JavaFX & SWT 0
M Eigene Klasse mit Grafikobjekten schreiben AWT, Swing, JavaFX & SWT 4
S JavaFX Drehen um eigene Achse AWT, Swing, JavaFX & SWT 2
P X extends TreeView - eigene Methoden AWT, Swing, JavaFX & SWT 5
Java_RY AWT Frame in eine eigene klasse auslagern und aufrufen AWT, Swing, JavaFX & SWT 6
L Eigene Component anordnen AWT, Swing, JavaFX & SWT 7
L JavaFX Eigene JavaFX Controls anlegen AWT, Swing, JavaFX & SWT 1
L Swing Teile eines JPanel in eigene Klasse auslagern AWT, Swing, JavaFX & SWT 3
stylegangsta Eigene Klasse für JButton aus dem JFrame abrufen AWT, Swing, JavaFX & SWT 29
L Eigene Component Layout AWT, Swing, JavaFX & SWT 4
S Swing Eigene JComboBox Problem! AWT, Swing, JavaFX & SWT 1
O JTabeddpane aber jedes JPanel als eigene Klasse anlegen AWT, Swing, JavaFX & SWT 7
G Event Handling Event Handling in eigene Klasse AWT, Swing, JavaFX & SWT 4
L Eigene JComponent in GridLayout AWT, Swing, JavaFX & SWT 9
A JavaFX Scene Builder eigene Klasse hinzufügen AWT, Swing, JavaFX & SWT 2
L Swing Wie programmiere ich eine eigene GUI? AWT, Swing, JavaFX & SWT 12
T Swing Eigene Konsole AWT, Swing, JavaFX & SWT 5
D Swing Eigene Tabelle AWT, Swing, JavaFX & SWT 18
M eigene horizontale Scrollbar AWT, Swing, JavaFX & SWT 1
A JavaFX Eigene Komponenten im Scene Builder AWT, Swing, JavaFX & SWT 0
J JavaFX Eigene ListCell Problem(Objekte werden doppelt angezeigt) AWT, Swing, JavaFX & SWT 1
C Swing MenuBar als eigene Klasse AWT, Swing, JavaFX & SWT 4
A Swing Eigene JComponent Scrollable AWT, Swing, JavaFX & SWT 6
Kenan89 3D Models aus anderen Spielen in eigene einfügen AWT, Swing, JavaFX & SWT 3
R SWT Eigene Events erstellen und werfen AWT, Swing, JavaFX & SWT 59
P Eigene CMD GUI zum Starten von JAR AWT, Swing, JavaFX & SWT 10
M Swing eigene Dialoge, aber wie genau? AWT, Swing, JavaFX & SWT 5
S Eigene JComponent Image zeichnen AWT, Swing, JavaFX & SWT 3
P Swing Alle Zeilen einer Spalte (jTable) zusammen zählen und in eine eigene Zeile das Ergebnis schreiben. AWT, Swing, JavaFX & SWT 7
K 3D-Grafik Eigene "Kamera" AWT, Swing, JavaFX & SWT 2
T eigene Klasse für Panel AWT, Swing, JavaFX & SWT 9
S Swing Eigene Komponente (JPanel) soll ChangeEvents verteilen AWT, Swing, JavaFX & SWT 12
E LookAndFeel Eigene Komponenten mit Synth L&F stylen AWT, Swing, JavaFX & SWT 2
alderwaran Swing XML editor plugin für eigene anwendung AWT, Swing, JavaFX & SWT 2
P Swing Eigene Komponente Entwickeln - erben von JComponent oder JPanel? AWT, Swing, JavaFX & SWT 5
B Eigene Methoden in TABs einfügen AWT, Swing, JavaFX & SWT 8
R eigene Methoden für Buttons? AWT, Swing, JavaFX & SWT 11
H Swing Eigene Komponente wird nur halb oder komisch angezeigt AWT, Swing, JavaFX & SWT 3
H Swing Eigene Komponente reagiert falsch auf mouseClicked() AWT, Swing, JavaFX & SWT 5
T Eigene JComponent AWT, Swing, JavaFX & SWT 4
L Eigene Design Oberfläche erstellen AWT, Swing, JavaFX & SWT 3
1 Eigene Component in JScrollBar + fixe Linien??? AWT, Swing, JavaFX & SWT 2
T SWT eigene Komponenten AWT, Swing, JavaFX & SWT 2
Kr0e Allgemeine Frage zu Java2D (Eigene Impl.) AWT, Swing, JavaFX & SWT 18
A Eigene StatusBar AWT, Swing, JavaFX & SWT 2
1 Eigene JComponent mit MouseListener versehen AWT, Swing, JavaFX & SWT 10
S Eigene GUI Elemente erstellen AWT, Swing, JavaFX & SWT 6
D Eigene Methode soll Gerade zeichnen AWT, Swing, JavaFX & SWT 5
D Swing Eigene Komponente mit JSpinner AWT, Swing, JavaFX & SWT 4
MrMilti eigene Klasse in JTable ablegen AWT, Swing, JavaFX & SWT 12
R Swing JTable: Eigene Zeichnung im Header AWT, Swing, JavaFX & SWT 11
A Eigene Border für Buttons AWT, Swing, JavaFX & SWT 19
A Eigene Buttons AWT, Swing, JavaFX & SWT 20
C JTextPane HTML und eigene Tags AWT, Swing, JavaFX & SWT 10
S Eigene GUI (evt. Toolkit) AWT, Swing, JavaFX & SWT 10
M SWT: eigene Events AWT, Swing, JavaFX & SWT 9
& eigene Schriftart in JEditorpane AWT, Swing, JavaFX & SWT 2
T Eigene Fenster kreieren?zb. wie bei Winamp? AWT, Swing, JavaFX & SWT 9
D Eigene Component erstellen? AWT, Swing, JavaFX & SWT 4
F eigene Swing-Komponente. Drehregler AWT, Swing, JavaFX & SWT 4
M Eigene Klasse für mehrer JSplitPanes AWT, Swing, JavaFX & SWT 3
M Eigene Komponenten basteln AWT, Swing, JavaFX & SWT 25
O Eigene GUI Objekte entwerfen? AWT, Swing, JavaFX & SWT 3
A Eigene, sich selbst zeichnende Component AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen

Neue Themen


Oben