Im Bereich der Java -Swing -Programmierung hat das Erstellen interaktiver und benutzerfreundlicher Schnittstellen oberste Priorität. Eine der nützlichen Komponenten, die uns zur Verfügung stehenJspinner. Als Swing -Lieferant freue ich mich, Sie durch den Prozess des Erstellens eines Spinners zu führenJspinnerin Schwung.


Verständnis der Grundlagen von JSpinner
DerJspinnerDie Klasse in Java Swing ist ein einzelnes Zeilen -Eingabefeld, mit dem Benutzer eine Nummer oder einen Objektwert aus einer geordneten Sequenz auswählen können. Es bietet einem Benutzer - freundliche Möglichkeit, Werte einzugeben, insbesondere wenn der Wertebereich begrenzt ist oder wenn eine bestimmte Wertemenge ausgewählt werden muss.
Um a zu beginnen aJspinnerSie müssen zunächst die notwendigen Java -Swing -Pakete importieren. Der folgende Code -Snippet zeigt die Grundimportanweisungen:
Javax.swing importieren.*; import Java.awt.*; import Java.awt.event.ActionEvent; import Java.awt.event.ActionListener; public class SpinNerExample {public static void main (String [] args) {// Erstellen Sie einen JFrame JFrame Fram = new JFrame ("JSPINNER -Beispiel"); Frame.SetDefaultCloseOperation (jframe.exit_on_close); Frame.Setsize (300, 200); Frame.SetLayout (neuer FlowLayout ()); // Erstellen Sie einen jspinner jspinner spinner = new Jspinnner (); // den Spinner dem Frame Frame.ADD (Spinner) hinzufügen; // den Rahmen sichtbar machen. }}
In diesem Code erstellen wir zuerst eineJFrameWelches wird das Hauptfenster unserer Anwendung sein. Dann erstellen wir eineJspinnerObjekt und fügen Sie es dem Rahmen hinzu. Schließlich machen wir den Rahmen sichtbar. Wenn Sie diesen Code ausführen, sehen Sie einen einfachen Spinner mit einem Anfangswert von 0.
Anpassen des JSpinners
Die BasisJspinnerWir haben oben ein Standardmodell erstellt, mit dem ganzzahlige Werte ab 0 abzahlen können. Sie können jedoch die anpassenJspinnerin vielerlei Hinsicht.
Das Modell ändern
DerJspinnerVerwendet ein Modell, um seine Werte zu verwalten. Es sind mehrere gebaut - in Modellen in Java Swing, die Sie verwenden können:
Spinnernumbermodel: Dieses Modell wird verwendet, wenn Sie einen Spinner für numerische Werte erstellen möchten. Sie können die minimale, maximale und Schrittgröße angeben.
SpinnerNumbermodel numbermodel = neuer SpinnerNumbermodel (5, 1, 10, 1); JSPINNER numberSpinner = new Jspinnner (numbermodel);
In diesem Beispiel startet der Spinner mit einem Wert von 5, hat einen Mindestwert von 1, einen Maximalwert von 10 und eine Schrittgröße von 1.
Spinnerlistenmodell: Wenn Sie einen Spinner für eine bestimmte Liste von Werten erstellen möchten, können Sie die verwendenSpinnerlistenmodell.
String [] listValues = {"Apple", "Banane", "Cherry"}; SpinnerListModel ListModel = New SpinnerListModel (ListValues); JSPINNER ListSpinnner = new Jspinnner (ListModel);
Mit diesem Spinner kann der Benutzer aus der Liste der bereitgestellten Früchte auswählen.
Hinzufügen von Zuhörern
Sie können die Zuhörer zurJspinnerAktionen ausführen, wenn sich der Wert des Spinners ändert. DerChangelistenerDie Schnittstelle kann für diesen Zweck verwendet werden.
Spinner.AddChangelistener (e -> {Object value = spinner.getValue (); System.out.println ("neuer Wert:" + value);});
In diesem Code wird der neue Wert auf die Konsole gedruckt, wenn der Wert des Spinners ändert.
Verwenden von JSPINNER in einer echten Weltanwendung
Betrachten wir ein Szenario, in dem wir eine Bewerbung erstellen, um die Anzahl der Schaukeln auf einem Spielplatz zu verwalten. Als Swing -Lieferant bieten wir verschiedene Arten von Schwankungen an, wie z.Doppelschwung für KinderAnwesendGroße sensorische Schwung Erwachsene, UndNützliche Swing -Sets im Freien.
Javax.swing importieren.*; import Java.awt.*; import Java.awt.event.ActionEvent; import Java.awt.event.ActionListener; public class SwingManagementApp {public static void main (String [] args) {jframe Fram = new JFrame ("Swing Management"); Frame.SetDefaultCloseOperation (jframe.exit_on_close); Frame.SetSize (400, 300); Frame.SetLayout (neuer FlowLayout ()); // Erstellen Sie einen Spinner für die Anzahl der Swings SpinnerNumbermodel Swingmodel = New SpinnerNumbermodel (0, 0, 100, 1); Jspinnner Swingspinner = new Jspinner (SwingModel); // Erstellen Sie ein Etikett, um die ausgewählte Anzahl von Schaukeln anzuzeigen. // dem Spinner Swingspinner.Addchangelistener (e -> {int value = (int) Swingspinner.getValue (); SwingLabel.setText ("Anzahl der ausgewählten Schwünge:" + value);}) einen Änderungshörer hinzufügen. // Erstellen Sie eine Schaltfläche, um die Auswahl zu bestätigen. achhabenbutton.addactionListener (e -> {int value = (int) Swingspinner.getValue (); joptionPane.showMessAntialog (Rahmen, "Sie haben ausgewählt" + value + "Swings.");}); // Komponenten zum Frame Frame.ADD hinzufügen (neuer JLabel ("Wählen Sie die Anzahl der Schwünge aus:")); Frame.Add (Swingspinner); Frame.Add (SwingLabel); Frame.Add (Bestätigungbutton); Frame.SetVisible (True); }}
In dieser Anwendung erstellen wir einen Spinner, mit dem der Benutzer die Anzahl der Schaukeln auswählen kann. Wir fügen auch eine Beschriftung hinzu, um die ausgewählte Nummer und eine Schaltfläche anzuzeigen, um die Auswahl zu bestätigen. Wenn der Benutzer auf die Schaltfläche Bestätigen klickt, wird in einem Dialogfeld die Anzahl der ausgewählten Schaukeln angezeigt.
Styling the Jspinner
Sie können das auch stylenJspinnerUm es visuell ansprechender zu machen. Sie können die Schriftart, Farbe und den Rand des Spinners ändern.
Spinner.Setfont (neue Schriftart ("Arial", font.bold, 16)); Spinner.Setforenground (color.red); Spinner.SetBorder (BorderFactory.CreatelineBorder (color.Blue, 2));
In diesem Code ändern wir die Schrift des Spinners in Arial, Fett und Größe 16. Wir ändern auch die Textfarbe in Rot und fügen einen blauen Rand mit einer Breite von 2 Pixel hinzu.
Erweiterte Verwendung von Jspinner
Erstellen eines benutzerdefinierten Modells
Wenn die gebauten Modelle nicht Ihren Anforderungen entsprechen, können Sie ein benutzerdefiniertes Modell erstellen, indem Sie das erweiternAbstractSpinnerModelKlasse.
Klasse CustomSpinnerModel erweitert abstractSpinnerModel {private String [] values = {"Option 1", "Option 2", "Option 3"}; private int currentIndex = 0; @Override public Object getValue () {return values [currentIndex]; } @Override public void setValue (Objektwert) {für (int i = 0; i <values.Length; i ++) {if (values [i] .equals (value)) {currentIndex = i; firestatechanged (); brechen; }}} @Override öffentliches Objekt getNextValue () {if (currentIndex <values.length - 1) {currentIndex ++; firestatechanged (); Rückgabewerte [currentIndex]; } return null; } @Override öffentliches Objekt getPreviousValue () {if (currentIndex> 0) {currentIndex--; firestatechanged (); Rückgabewerte [currentIndex]; } return null; }}
Sie können dieses benutzerdefinierte Modell dann mit einem verwendenJspinner:
CustomSpinnerModel CustomModel = new CustomSpinnerModel (); JSPINNER CustomSpinner = new Jspinner (CustomModel);
Abschluss
DerJspinnerIn Java Swing befindet sich eine leistungsstarke und vielseitige Komponente, mit der interaktive Benutzeroberflächen erstellt werden können. Als Swing -Lieferant verstehen wir, wie wichtig es ist, hochwertige Komponenten und Lösungen bereitzustellen. Egal, ob Sie eine einfache oder eine komplexe Anwendung erstellen, dieJspinnerKann auf Ihre Bedürfnisse zugeschnitten werden.
Wenn Sie daran interessiert sind, unsere Swing -Produkte zu kaufen, z.Doppelschwung für KinderAnwesendGroße sensorische Schwung Erwachsene, oderNützliche Swing -Sets im Freienoder wenn Sie Fragen zu unseren Swing -Programmierlösungen haben, können Sie uns gerne für eine Beschaffungsverhandlung kontaktieren.
Referenzen
- "Java Swing Tutorial" von Oracle
- "Effektiver Java" von Joshua Bloch
