Es geht um eine eigentlich ganz simple Sache. Ich habe eine List<Person> und aus der soll der Anwender eine Person aussuchen. Person sieht so aus:
Für solche Zwecke verwende ich normalerweise eine ComboBox. Also mal schnell eingebaut, dann noch einen Converter spendiert und was stelle ich fest? Das Ding verhält sich nicht wie eine ComboBox, bei der man einen Buchstaben (oder eine Folge von Buchstaben) eintippen kann, um mal schnell zu einem Eintrag zu springen. Das Teil reagiert überhaupt nicht (Pfeiltasten etc. funktionieren)
Frage 1: mache ich was falsch?
Das ist aber eigentlich Nebensache, denn ich wollte eine ComboBox mit Autovervollständung. Heißt: der Anwender sieht, was er eintippt und die Auswahlliste wird entsprechend gefiltert.
Frage 2: sehe ich das richtig, dass das standardmäßig nicht vorgesehen ist?
Das will ich gar nicht glauben aber wenn ich mich im Netz umschaue, dann ist das ernsthaft so gedacht, dass ich dafür jetzt seitenweise Code einbauen soll. Dazu hatte ich jetzt keine Lust, also nehme ich die SearchableComboBox von ControlsFX, mit der komme ich der Sache schon etwas näher. Allerdings wird der ausgewählte Wert nicht übernommen und dann wäre da noch die Frage, wie ich die Liste nach meinen Vorstellungen filtern kann. Von Haus aus wird anscheinend mit einem contains gefiltert, ich bräuchte ein startsWith.
Versionen:
Wäre schön, wenn jemand die Antworten kurz aus dem Ärmel schütteln könnte, aber bitte keinen Aufwand betreiben.
Java:
record Person(String name, String firstName) {}
Für solche Zwecke verwende ich normalerweise eine ComboBox. Also mal schnell eingebaut, dann noch einen Converter spendiert und was stelle ich fest? Das Ding verhält sich nicht wie eine ComboBox, bei der man einen Buchstaben (oder eine Folge von Buchstaben) eintippen kann, um mal schnell zu einem Eintrag zu springen. Das Teil reagiert überhaupt nicht (Pfeiltasten etc. funktionieren)
Frage 1: mache ich was falsch?
Das ist aber eigentlich Nebensache, denn ich wollte eine ComboBox mit Autovervollständung. Heißt: der Anwender sieht, was er eintippt und die Auswahlliste wird entsprechend gefiltert.
Frage 2: sehe ich das richtig, dass das standardmäßig nicht vorgesehen ist?
Das will ich gar nicht glauben aber wenn ich mich im Netz umschaue, dann ist das ernsthaft so gedacht, dass ich dafür jetzt seitenweise Code einbauen soll. Dazu hatte ich jetzt keine Lust, also nehme ich die SearchableComboBox von ControlsFX, mit der komme ich der Sache schon etwas näher. Allerdings wird der ausgewählte Wert nicht übernommen und dann wäre da noch die Frage, wie ich die Liste nach meinen Vorstellungen filtern kann. Von Haus aus wird anscheinend mit einem contains gefiltert, ich bräuchte ein startsWith.
Versionen:
XML:
<java.version>21</java.version>
<javafx.version>23.0.2</javafx.version>
<controlsfx.version>11.2.2</controlsfx.version>
Wäre schön, wenn jemand die Antworten kurz aus dem Ärmel schütteln könnte, aber bitte keinen Aufwand betreiben.