JComboBox (Nicht mehr ausklappbar, aber Editable)

MetroAffe

Mitglied
Kurz, und knapp. Die Frage lässt aus dem Titel herauslesen :p



Ausführliche Frage (Edit):

Ich benötige eine JComboBox, die, wenn man auf einen JButton klickt Bearbeitbar ("setEditable") aber nicht mehr ausklappbar ist ...
Lässt sich das denn irgendwie verwirklichen? Oder müsste ich das aufklappen z.B mit einem Listener abfangen? Oder müsste ich sogar ein CardLayout verwenden um es so aussehen zu lassen wie ein JTextField?

Danke
 
Zuletzt bearbeitet:
Äh naja, also der ein oder andere Hinweis wäre just-for-fun doch ganz praktisch...

z.B. hat die ComboBox items? Was meinst du mit editable? Kannst du hineinschreiben? Existiert das Problem ab Programmstart oder erst nachdem du irgendetwas machst? Was treibst du so mit der ComboBox? ==> Code-Snippets an denen du darauf zugreifst wären nützlich.

Bitte :)
 
Also:

Ja die ComboBox hat Items ... auf die ComboBox ist "setEditable" angewendet - "setEnabled(false)" geht also nicht ist deswegen ausgeschlossen als Lösung. Und alles andere Ist völlig egal. Was spielt es für eine Rolle ob es ab Programmstart sein soll oder nicht?
Es gibt nur leider keine funktion wie "setNichtAusklappbar" :p

Und nur damit ihr zufrieden seit:

Code:
private JComboBox box;

box1 = new JComboBox(new Object[] { "Bitte wählen ..." });
box1.setEditable(true);

Alles klar?
Dann vielen Dank ;D
 
Vllt. eine blöde Frage, aber warum kein JTextField?

...wobei die Items bei einer nicht-ausklappbaren Combobox auch wenig Sinn machen...
 
Was spielt es für eine Rolle ob es ab Programmstart sein soll oder nicht?
Das könnte durchaus eine Rolle spielen. z.B. könnte es ein Thread-Problem sein, wenn es nicht sofort bei Programmstart passiert.

Was meinst du mit setEnabled(false) geht nicht? Also soweit wie du den Code da stehen hast, dürfte es keine Probleme geben. setEnabled(false) führst du ja nicht aus (das würde in der Tat dazu führen, dass sich die Box nicht ausklappen lässt).

An welcher Stelle greifst du denn noch auf die ComboBox zu? Das kann ja nicht alles sein (zumindest einem Container muss sie ja noch hinzugefügt werden). Der Fehler muss an irgendeiner anderen Stelle auftreten.
 
@Harrier glaube du hast micht nicht verstanden - ausführliche Frage oben als Edit

Und wenns wirklich eine Rolle spielen sollte:

1. Nicht beim Programmstart ... erst wenn man einen JButton betätigt soll dieser zustand hervorgerufen werden.

2. Kann kein JTextField sein ... weil von dieser JComboBox, andere JTextFields abhängig sind - ich könnte jetzt zwar mithilfe vom CardLayout, die JComboBox durch ein JTextField "ersetzten" aber ich dachte es gäbe da eine viel elegantere Lösung


PS: sheel du hast das eigentlich schon richtig kapiert, im Prinzip soll es dann wie ein JTextField aussehen, auf das "setEditable" angewendet ist ...
 
Zuletzt bearbeitet:
Wow leute ihr geht der eigentlichen frage aus dem weg
...was daran liegen könnte, dass du im ganzen Thread noch
keine einzige wirkliche Frage zur Combobox gestellt hast.
Die einzigen Fragen sind folgende zwei:
MetroAffe hat gesagt.:
"Was spielt es für eine Rolle ob es ab Programmstart sein soll oder nicht?"
"Alles klar?"

PS: sheel du hast das eigentlich schon richtig kapiert, im Prinzip soll es dann wie ein JTextField aussehen, auf das "setEditable" angewendet ist ...
Das verwirrt mich jetzt zwar wieder (obwohl ich schon dachte, es verstanden zu haben)...
Was ich verstehe:
Dein Problem ist nicht, dass du eine nicht-ausklappbare Combobox hast,
die aber ausklappbar sein soll. Sondern genau sowas willst du erreichen:
Eine Combobox, in die man reinschreiben kann,
aber nicht aufklappen und nichts auswählen.

Bitte endlich einmal klarstellen, sonst macht der Thread keinen Sinn mehr.

edit: Oben gesehen

2. Kann kein JTextField sein ... weil von dieser JComboBox, andere JTextFields abhängig sind - ich könnte jetzt zwar mithilfe vom CardLayout, die JComboBox durch ein JTextField "ersetzten"...
Denkst du nicht vllt. zu kompliziert?
Was bedeutet, Textfields sind von der Combobox "abhängig"?
Was kann die nicht-klappbare Combobox als JComponent, was das Textfield nicht kann?

Ich hoffe jetzt sind all eure Fragen geklärt und meine ist jetzt an der Reihe ^^
Eventuell ist an setPopupVisible, isPopupVisible und addPopupMenuListener was dran.
Findet man innerhalb einer Minute über Google.

edit: Da das Thema als Erledigt markiert wurde, hats wohl funktioniert.
 
Solltest vlt. mal die Seite neu laden ... das was du da zitiert hast gibt es nicht und gaanz oben steht eine schön ausgeschriebene Frage.
Ich denke nicht zu kompliziert aber ich kann dir hier jetzt auch nicht tausende Zeilen Code erläutern nimm es einfach so hin und definiere eine JComboBox die soetwas kann.
 
Zurück