JComboBox soll beim Öffnen eine andere JComboBox öffnen

  • Themenstarter Themenstarter Guest
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Besteht die Möglichkeit, dass sich beim Öffnen einer JComboBox eine andere JComboBox ebenfalls öffnet? Bei meiner einzigen Lösung öffnet sich zwar die andere Combobox, erstere Combobox wird aber nicht mehr geschlossen.

Code:
		String[] a = { "dsf", "asdf", "sfsadf", "asdffs", "öksldf" };
		setLayout(new FlowLayout());
		b = new JComboBox(a);
		add(b);
		c = new JComboBox(a);
		add(c);
		b.addPopupMenuListener(new PopupMenuListener() {

			public void popupMenuCanceled(PopupMenuEvent e) {
				// TODO Auto-generated method stub
			}

			public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
				System.out.println("combobox1 invisible");
			}

			public void popupMenuWillBecomeVisible(PopupMenuEvent e) {
				// c.showPopup();
				// c.firePopupMenuWillBecomeVisible();
				// c.firePopupMenuWillBecomeInvisible();
				// c.setPopupVisible(true);
				System.out.println("combobox1 visible");
			}

		});
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		setSize(200, 200);
		setVisible(true);

hab das jetzt schon alles probiert, bei setPopupVisible() wird das Popup zwar angezeigt, aber das eigene Popup kann nicht mehr ausgeblendet werden.
 
Hast du ja neulich schonmal gefragt.

So als allgemeine Gegenfrage: Hast du schon mal in irgendeinem Programm gesehen, dass (egal ob bei einer ComboBox, von einer Menüleiste, oder ein Kontextmenü) zwei Popup-Menüs gleichzeitig offen waren? Meinetwegen auch in verschiedenen Anwendungen... hast du schonmal in irgendeinem Zusammenhang, irgendwo, aus irgendeinem Grund, zwei Popup-Menus gleichzeitig auf deinem Bildschirm gehabt?

(Soll heißen: Das würde schwierig werden - was auch immer du vorhast, du solltest es anders machen...)
 
Also die sache ist die, in der einen Combobox sind die Artikelnummern, und in der anderen Combobox die zugehörigen Namen der Artikel. Der Benutzer hat die Möglichkeit den Artikel nicht nur über das Popup, sondern auch per Texteingabe in der JCombobox auszuwählen. Dadurch, dass die zweite Box geöffnet wird, erkennt er direkt den zugehörigen Artikelnamen.

beispielbm3.jpg
 
Hm. Die Liste der Möglichkeiten ist lang und vielfältig
- Schreib' einfach BEIDES in die erste ComboBox
- Mach ein eigenes Popup auf (eben nicht das der anderen ComboBox)
- Schreib' eine eigene Component für diese Auswahl
- Installiere ein eigenes UI für die ComboBox
- Verwende keine Popups, sondern eine List
Wie du dann hinkriegen wolltest, dass in der anderen ComboBox auch das richtige ausgewählt ist, weiß ich nicht. Nur so viel: Mit den "echten", "ComboBox-eigenen" Popups wird das schwierig...
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben