So erstellen Sie Comboboxen in Java

In Java können Sie Kombinationsfelder erstellen. EIN Kombinationsfeld ist eine Kombination aus einem Textfeld und einer Dropdown-Liste, aus der der Benutzer einen Wert auswählen kann. Wenn der Text-Feld Bereich der Steuer editierbar ist, kann der Benutzer einen Wert in das Feld eingeben oder einen Wert aus der Dropdown-Liste abgerufen bearbeiten.

bild0.jpg

Sie verwenden die JComboBox Klasse Combo-Boxen zu erstellen. ein Kombinationsfeld zu erstellen ist einfach. Sie haben drei Konstrukteure unter zu wählen, von denen das erste ein leeres Kombinationsfeld erstellt:

JComboBox combo1 = new JComboBox () -

Dann können Sie mit dem Artikel hinzufügen Elemente in die Kombinationsfeld hinzuzufügen:

combo1.addItem("Bashful")-combo1.addItem("Doc")-combo1.addItem("Dopey")-combo1.addItem("Grumpy")-combo1.addItem("Happy")-combo1.addItem("Sleepy")-combo1.addItem("Sneezy")-

Alternativ können Sie ein Kombinationsfeld erstellen und seinen Inhalt aus einem Array zu initialisieren, wie in diesem Beispiel:

String [] theSeven = { "Schüchterne", "Doc", "Blöd", "Grumpy", "Happy", "Sleepy", "Hatschi"} - JComboBox combo1 = new JComboBox (theSeven) -

Oder wenn Sie eine vorhandene Vektor Objekt mit den Daten, die Sie anzeigen möchten, können Sie diesen Code verwenden können:

JComboBox combo1 = new JComboBox (vector1) -

Wenn die Daten, die Sie in einer Array-Liste oder eine andere Art der Sammlung angezeigt werden soll, verwenden Sie die toArray Methode, um die Sammlung zu einem Array zu konvertieren und dann das Array in den Pass JComboBox Konstruktor, etwa so:

JComboBox combo1 = new JComboBox (arraylist1.toArray ()) -

Sie können jede Art von Objekt hinzufügen, die Sie zu einem Kombinationsfeld werden soll. Das Kombinationsfeld ruft die bespannen Verfahren der einzelnen Elemente, den Text zu bestimmen, in der Dropdown-Liste angezeigt werden soll. Angenommen, Sie haben ein Array von Mitarbeiter Objekte. Wenn Sie ein Kombinationsfeld aus diesem Array zu erstellen, wird die Zeichenfolge von den einzelnen Mitarbeiters zurückgegeben bespannen Verfahren wird in der Combo-Box angezeigt.

Standardmäßig wird der Benutzer die Daten nicht in das Textfeld ein Teil des Kombinationsfeld bearbeiten dürfen. Wenn Sie den Benutzer bearbeiten das Textfeld zulassen möchten, rufen Sie setEditable (true). Dann kann der Benutzer einen Wert, der nicht in der Combo-Box ist.

Um Elemente aus dem Kombinationsfeld zu entfernen, verwenden Sie eine der entfernen Methoden. Wenn Sie die Indexposition des Elements wissen Sie entfernen möchten, rufen Sie die removeItemAt Methode und die Indexnummer als Parameter übergeben. Andernfalls, wenn Sie das Objekt haben Sie entfernen möchten, rufen Sie Gegenstand entfernen und übergeben Sie das Objekt.

So entfernen Sie alle Elemente in einem Kombinationsfeld, rufen RemoveAllItems. Nehmen wir an, dass Sie ein Kombinationsfeld mit dem Namen custCombo das ist gefüllt mit Kunde Objekte aus einer Datei gelesen, und Sie müssen dieses Kombinationsfeld zu aktualisieren, um sicher zu stellen, dass es alle aktuellen Kunden. Hier ist eine Methode, die das tut:

private void fillCustomerCombo () {Arraylist Kunden = GetCustomers () - custCombo.removeAllItems () - für (Customer c: Kunden) custCombo.addItem (c) -}

In diesem Beispiel wird ein Verfahren namens GetCustomers genannt wird, eine zu bekommen Anordnungsliste von Kundenobjekten aus der Datei. Dann werden alle Elemente derzeit in der Combo-Box werden gelöscht und eine verbesserte für Schleife wird verwendet, um die Kunden an das Kombinationsfeld hinzuzufügen.

Menü