GWT-ListBox standardmäßig deaktiviert
Habe ich ein GWT-die ListBox mit items:
listBox = new ListBox();
listBox.addItem("A");
listBox.addItem("B");
listBox.addItem("C");
und ich möchte, dass es erstmal deaktiviert, so dass kein Element ausgewählt wird. Der anfängliche Mangel an Auswahl sollte sein, symbolisiert durch eine leere text-und nach der Auswahl jedes Element kann der Benutzer nicht wählen Sie "keine Auswahl".
Leider die folgende Zeile:
listBox.setSelectedIndex(-1);
wirft IndexOutOfBoundsException
.
Ist es möglich, um ein solches Verhalten mit GWT-ListBox?
- dann könnte man mit einem leeren string als erstes Element zunächst einmal Benutzer ausgewählt alles, was Sie können, löschen Sie die erste.
- Dann, wenn der Benutzer öffnen Sie die Liste zum ersten mal, er/Sie wird sehen das leere option und wird in der Lage sein, um ihn abzuholen.
- Sie können überprüfen, oder zu hören, klicken Sie auf Ereignis löschen und das leere Element.
- Ich kann nicht die leere option. Wenn löschen auf klicken Sie auf, das erste nicht-leere option ausgewählt werden - es sollte nicht auf diese Weise arbeiten.
- Danke reddi für die Hinweise.
- Sie können deaktivieren Sie die erste option auf ändern oder klicken Sie auf Ereignis....
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, es ist die normale situation, denn wenn Sie rufen
setSelectedIndex()
es wird den index überprüfen, ob in dem Bereich. Es ist Methode in der ListBox-Klasse.Also standardmäßig 0 index ausgewählt werden. Wenn Sie möchten, fügen Sie eine leere text-Element für das erste Element, und fügen Sie ein zusätzliches Element für die null-index mit einem leeren string:
Es ist erwähnenswert, dass eine ListBox verwendet eine select-tag. Mit einem select-tag, das nicht geben Sie das multiple-Attribut, wird der erste Eintrag ist standardmäßig aktiviert, indem Sie die browser, die Sie können nicht alles tun, zu verhindern. Sie können dieses Verhalten ändern, wenn eine option-tag in HTML, können einen ausgewählten Attribut, was bedeutet, dass es ist die Standard-Auswahl. Aber GWT scheint nicht zu bieten jede Möglichkeit, um ein Element als Standard ausgewählt ist (es wäre schön, wenn es eine überlastung der addItem-das dauerte ein boolean für Standard-ausgewählt ist, oder eine setDefaultSelected(int index) - Methode).