Combobox

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Eine Combobox, Combo-Box (von englisch combo box) oder Kombinationsfeld ist ein Datenfeld in einer grafischen Benutzeroberfläche (GUI) einer Computer-Software, über das der Benutzer eine Auswahl aus vorgegebenen Möglichkeiten treffen oder alternativ eigene Eingaben tätigen kann. Der Name Combobox leitet sich davon ab, dass sie als Kombination aus einem Textfeld (Textfeld) und einem Listenfeld (Auswahlliste, Listbox, Drop-Down-Menü), auch Kombinationslistenfeld genannt, betrachtet werden kann. Bei einer Combobox sind daher optional Tastatureingaben in das Textfeld der Combobox möglich oder aber die Auswahl/Änderung eines der vorgegebenen Listeneinträge. Eine Combobox ist insofern auch ein Ausgabefeld. Comboboxen sind nicht zu verwechseln mit einer Selectbox oder einer Dropdown-Liste – diese erlauben in der Regel keine freien Benutzereingaben, die Komponente des Textfeldes fehlt hier also.

Funktionsweise und Gestaltung[Bearbeiten]

Welche Einträge – als Vorschläge zur Auswahl durch den Anwender – zu welchem Zeitpunkt in der Liste der Combobox angezeigt werden, hängt dabei von dem jeweiligen Anwendungsfall ab. Von den Details der Implementierung der Combobox in ein Computerprogramm hängt es auch ab, ob das sichtbare Textfeld zunächst leer ist oder ob ein voreingestellter Wert angezeigt wird. Auch die Liste selbst kann zunächst leer sein, und sich erst später mit den im Textfeld eingegebenen Zahlen oder Texten füllen.

Bei der mit dem Textfield kombinierten Listbox handelt es sich meistens um eine platzsparende, einzeilige sogenannte Drop-down Listbox, die sich erst beim Drücken des zugehörigen Buttons zeigt. Genau genommen spricht man dann von einer Drop-Down Combobox. Eine Kombination aus Combobox, Button (Schaltfläche) und Icon wird auch Combutcon genannt.

Anwendungsbeispiele[Bearbeiten]

  • Datenbankanwendungen: Für die Verwaltung einer Adressdatenbank bietet sich beispielsweise eine Combobox für die Anrede an. Die vorgegebenen Werte lauten 'Herr, Frau, Firma', zusätzlich hat der Bearbeiter aber auch die Möglichkeit, eigens definierte Anreden einzugeben (etwa Herr Dr.).
Eine Combobox im Webbrowser Mozilla Firefox
  • Adressleiste eines Webbrowser: Ein typisches Beispiel für eine Combobox ist die Adressleiste eines Webbrowsers. Die Internetadresse kann in das Textfeld eingegeben werden, bereits besuchte Seiten finden in der DropDown-Liste Platz und können vom Benutzer mit wenig Aufwand wieder aufgerufen werden.
  • Webanwendungen: Mit Ajax realisierte auto-completes sind mit einer Combobox realisiert: Der Benutzer tippt etwas in ein Textfeld ein, worauf sich eine Auswahlliste mit vorgeschlagenen Begriffen öffnet, aus die der Benutzer wählen kann.
  • Beziehungen zwischen Datenobjekten: Wenn etwa in einer Erfassungsmaske für Aufträge u. a. einzugeben ist, welcher Sachbearbeiter für die Bearbeitung zuständig ist, wird häufig eine Combobox verwendet. Die 'aufgeklappte' Box zeigt zur Eingabeauswahl die Namen möglicher Sachbearbeiter (aus einem entsprechenden Datenbestand) an. Nach der Auswahl (und wenn die Auftragsdaten nur angezeigt werden) ist nur der Name des gewählten Sachbearbeiters sichtbar; dessen Kennung ist im Datensatz des jeweiligen Auftrags gespeichert.

Umsetzung[Bearbeiten]

HTML[Bearbeiten]

Im Gegensatz zu HTML 4 bietet HTML5 die Möglichkeit, eine Auswahlliste zu definieren:

<input name="anrede" list="anrede" />
<datalist id="anrede">
 <option value="Herr"></option>
 <option value="Frau"></option>
</datalist>

Aufgrund noch mangelnder Browserunterstützung[1] muss das clientseitig ausgeführte Javascript eine solche Liste erstellen oder für entsprechende Kompatibilität sorgen. Für das JavaScript-Framework jQuery etwa gibt es entsprechende Plugins.[2]

Java[Bearbeiten]

In der Programmiersprache Java unter Swing ist JComboBox die Combobox GUI-Komponente.

Ist die JComboBox als nicht editierbar programmiert ( setEditable(false)), verhält sie sich wie eine Drop-down Listbox, wie auch die AWT-Komponente Choice. Sun bietet in Swing die mehrzeilige Listbox JList an – jedoch nicht als eigenständige Drop-down Listbox, sondern es wird eine „kastrierte“ JComboBox benutzt.

MS Access[Bearbeiten]

Kombinationsfeld in MS Access

In der grafischen Entwicklungsumgebung von MS Access wird die Combobox im Erfassungsformular (im Beispiel für 'Aufträge') als Elementtyp 'Kombinationsfeld' angelegt und so wie in der nebenstehenden Grafik gezeigt angewendet. Der Entwickler spezifiziert in diesem Fall (bei Datenanzeige aus einem Datenbestand) für das Kombinationsfeld u. a. folgende Eigenschaften: Breite der Box; Anzahl Zeilen der Box; Datenquelle für die anzuzeigenden Personen; Name der ID im Datenbestand PERSON; Name des Fremdschlüssels im Datenbestand AUFTRAG u.v.a.

Referenzen[Bearbeiten]

  1. Diskussion über HTML 5 Comboboxen auf stackoverflow.com
  2. datalist Plugin für jQuery[1]