JComboBox

Status
Nicht offen für weitere Antworten.

DaKu

Aktives Mitglied
Hallo erstmal.

Habe mich nun mal an Java getraut und stehe nun schon vor meinem 1. Problem
und zwar habe ich eine JComboBox und möchte ihr nun einen "Namen" geben, also nicht wie normal, das das, was angezeigt wird auch in der Box steht, sondern z. B.

die Box soll den Namen "Auto" (also es soll "Auto" dastehen) bekommen und wenn ich drauf drücke, sollen die Fahrzeughersteller erscheinen, jedoch nicht "Auto" selbst.

Hoffe, ich habe mich da einigermaßen verständlich ausgedrückt & die Suchfunktion habe ich auch schon bemüht, aber ich konnte nichts entsprechendes finden.
Falls ich es jedoch übersehen haben sollte, hoffe ich, das ein Link ausreicht.

Danke schon mal im vorraus
 

MPW

Top Contributor
DaKu hat gesagt.:
die Box soll den Namen "Auto" (also es soll "Auto" dastehen) bekommen und wenn ich drauf drücke, sollen die Fahrzeughersteller erscheinen, jedoch nicht "Auto" selbst.

Hoffe, ich habe mich da einigermaßen verständlich ausgedrückt & die Suchfunktion habe ich auch schon bemüht, aber ich konnte nichts entsprechendes finden.
Falls ich es jedoch übersehen haben sollte, hoffe ich, das ein Link ausreicht.

Hm, also, wenn ich dich richtig verstehe, soll Auto praktisch der Defaultwert sein und sobald man draufklickt, kann man dann ein Auto auswaehlen.

- Fuege die gesamte Liste in die ComboBox ein(samt Auto).
- Setzte den Startwert auf Auto
- Einen Listener drauf(mit ist gerade entfallen wie der heisst...irgendwie ItemListener oder sowas...) und sobald der das erstmal aktiviert wird, entfernst du Auto aus der Liste.

Ich kapiere aber nicht, warum das da nicht stehen bleiben soll, denn es kann ja passieren, dass der Anwender es sich anders ueberlegt und kein Auto auswaehlen will....
 

sparrow

Top Contributor
Ich glaube eher er möchte eine Namen vor der Box haben.
Das funktioniert indem du ein JLabel einfügst.
Das ist als eine Komponente die mit der JComboBox nichts zu tun hat, sondern die du dazu verwendest Text zu schreiben.

Adde also auf dein Layout ein JLabel und die JComboBox.




Gruß
Sparrow
 

DaKu

Aktives Mitglied
eigentlich nicht VOR der Box, eher so wie es MPW gesagt hat,
die ComboBox soll im Endeffekt nicht wieder zu gehen, nur da bin ich leider noch nicht mit meinen Überlegungen, sondern offen bleiben (mit Scrollbar), bis man wieder auf "Auto" drückt und in der Zeit, kann man(n) ja wieder was anderes auswählen.
Aber vielleicht hat da einer eine bessere Methode dazu. :meld:

Ach so, Dankeschön erstmal :D
 

lin

Top Contributor
hm.. schonmal ne list angeschaut.. ist zwar nicht genau so wie du wolltest, aber vllt. gefällt dir das noch besser..
sonst kannst du natürlich die List in nem Dialog öffnen, wenn du auf "Auto" klickt..
Code:
import java.awt.List;

import javax.swing.*;

public class Selection extends JFrame {

	public Selection() {
		JLabel cars = new JLabel("Automarken:");
		
		List lst = new List(4,false);
		lst.add("Mercedes");
		lst.add("BMW");
		lst.add("Volkswagen");
		lst.add("Opel");
		lst.add("Audi");
		lst.add("Fiat");
		lst.add("Maserati");
		lst.add("Porsche");
		
		add("North",cars);
		add("Center",lst);
		
		pack();
	}

	public static void main(String[] args) {
		new Selection().setVisible(true);
	}

}
 

DaKu

Aktives Mitglied
hoffe Ihr verzeiht mir, aber ich habe im Moment kein anderes Bsp gefunden und zwar unter:
hier, wenn man da z. B. auf "Referer" klickt, genau so soll es am Ende aussehen, nur halt, wenn man nochmal draufklickt, das es wieder zu gehen soll
 

lin

Top Contributor
hm?.. da passiert glaub nur was sinnvolles wenn man angemeldet ist..

edit: ah, nein, jetzt weiss ich was du meinst...
 

lin

Top Contributor
kannst ja sowas in der Art hier basteln...
dass du halt beim Klick aufn Button ne List hinzufügst und bei erneutem Klick entfernst..
Code:
import java.awt.List;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

public class Selection implements ActionListener {
	JFrame f = new JFrame();
	List lst;
	boolean isShown = true;
	
	public Selection() {
		JButton cars;
		cars = new JButton("Automarken:");
		cars.addActionListener(this);
		cars.setActionCommand("cars");
		
		lst = new List(4,false);
		lst.add("Mercedes");
		lst.add("BMW");
		lst.add("Volkswagen");
		
		f.add("North",cars);
		f.add("Center",lst);
		
		f.pack();
		f.setVisible(true);
	}

	public void actionPerformed(ActionEvent evt) {
		if(evt.getActionCommand().equals("cars")) {
			if(!isShown) {
				f.add(lst);
				f.validate();
				isShown = true;
			} else {
				f.remove(lst);
				f.validate();
				isShown = false;
			}
		}
	}
	
	public static void main(String[] args) {
		new Selection();
	}
}
 

DaKu

Aktives Mitglied
hhhhhmmmmm :lol:

sieht schonmal nicht schlecht aus, nur leider darf das Feld darunter nicht sein, da direkt darunter noch 2 solche Dinger hin sollen, die dann nach unten rutschen sollen, wenn man das Feld öffnet, deshalb habe ich am Anfang an eine (J)ComboBox gedacht.
Es ist auch bestimmt möglich, die Buttons untereinander zu setzen und das LIST Feld beim drücken des Buttons auf VISIBLE zu setzen und wenn mann den Button, oder einen anderen drückt, das angezeigte auf INVISIBLE und das andere dann wieder auf VISIBLE zu setzen, oder?
Naja und die anderen Button dann runterschieben mit den x/y Koordinaten.
 

Sky

Top Contributor
@ lin: ich würde SWING und AWT nicht mischen

@ DaKu: ich würde es so machen:
Code:
class Selection {
  JFrame f = new JFrame();

  public Selection() {

    JComboBox box = new JComboBox(new String[] {"BMW", "Ford", "Opel"});
    box.setSelectedIndex( -1);
    DefaultListCellRenderer renderer = new DefaultListCellRenderer() {
      public Component getListCellRendererComponent(JList list,
          Object value,
          int index,
          boolean isSelected,
          boolean cellHasFocus) {
        // nichts gewählt
        if (value == null) {
          value = "Auto";
        }
        super.getListCellRendererComponent(list, value, index, isSelected,
                                           cellHasFocus);

        return this;
      }

    }
    ;
    box.setRenderer(renderer);

    f.getContentPane().add("Center", box);
    f.pack();
    f.setVisible(true);
  }

  public static void main(String[] args) {
    new Selection();
  }
}
 

DaKu

Aktives Mitglied
@ Sky

Danke auch dir, nur bleibt "Auto" nach Wahl eines Fahrzeugs nicht dastehen & die ComboBox schliesst sich wieder, wenn man ein Fahrzeeug ausgewählt hat, oder irgendwo hingeklickt hat, aber das "Auto" nicht in der Liste steht, das sieht schon einmal sehr gut aus.

auch nochmal an dich, was bedeudet das f.pack();???
 

lin

Top Contributor
@ lin: ich würde SWING und AWT nicht mischen
:oops: oh, ja klar, das ist natürlich totaler Mist... liegt wohl daran, dass ich die List eher per Zufall gefunden hab und dann in Eclipse reingepastet hab und halt automatisch importiert hab... quatsch das :)
 

DaKu

Aktives Mitglied
So, muss dieses Thema leider nochmal hochholen.
Habe den Code von Sky genommen und in mein Progrämmchen eingebaut, jedoch gibt es da ein Problem, mit denen ich da zu kämpfen habe.
Ich rufe nach
Code:
return this;
ein Unterprogramm auf, das mir beim Auswählen ein Bild auf einem Label anzeigen soll.
Jedoch zappelt mir das Programm zu oft in

Code:
DefaultListCellRenderer renderer = new DefaultListCellRenderer() { 
      public Component getListCellRendererComponent(JList list, 
          Object value, 
          int index, 
          boolean isSelected, 
          boolean cellHasFocus) { 
        // nichts gewählt 
        if (value == null) { 
          value = "Auto"; 
        } 
        super.getListCellRendererComponent(list, value, index, isSelected, 
                                           cellHasFocus); 

        return this; 
      } 

    };
rum, also wenn ich mit der Maus etwas ausgewählt habe, wird der Programmteil noch 3-5 mal abgearbeitet, was sich dann natürlich auf das laden vom Bild auswirkt.
Einen Wert nach
Code:
box.setRenderer(renderer);
kann man auch nicht "abzapfen", da er ja da nichtmehr hinkommt, wenn man was auswählt.

Hoffe ich habe es einigermassen Verständlich erklärt.
Danke schonmal.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Editierbare JComboBox auf KeyEvents reagieren Java Basics - Anfänger-Themen 29
G JComboBox ist editable und eingegebenen Text auslesen bei focusLost() Java Basics - Anfänger-Themen 1
E Meine JCombobox werte an ohne selectiert zu haben Java Basics - Anfänger-Themen 6
D Probleme mit dem Windowbuilder und JComboBox Java Basics - Anfänger-Themen 2
J Selektiertes Element von jComboBox zwischenspeichern und wieder einsetzen Java Basics - Anfänger-Themen 0
C Erste Schritte JComboBox Einträge auf Duplikat prüfen Java Basics - Anfänger-Themen 4
A Mit JComboBox Ergebnis einen Integer aus einer anderen Klasse aufrufen. Java Basics - Anfänger-Themen 2
M JComboBox ersten Eintrag leerlassen bzw. Platzhalter Java Basics - Anfänger-Themen 1
Tommy135 Klassen jComboBox macht nicht was sie soll Java Basics - Anfänger-Themen 4
S ArrayListe in einer JComboBox anzeigen Java Basics - Anfänger-Themen 10
H JComboBox wird nicht angezeigt Java Basics - Anfänger-Themen 3
M JComboBox feste double Werte zu ordnen Java Basics - Anfänger-Themen 8
T Einträge in jComboBox aus Liste übernehmen Java Basics - Anfänger-Themen 1
T Auslesen mehrerer jComboBox (-en) Java Basics - Anfänger-Themen 4
H JCombobox Java Basics - Anfänger-Themen 1
D JComboBox duplizieren Java Basics - Anfänger-Themen 2
T jComboBox Java Basics - Anfänger-Themen 9
GadgetSofa jComboBox mit dem Button verbinden. Aber wie?? Java Basics - Anfänger-Themen 4
A GUI Absturz nach 3x benutzen einer JComboBox Java Basics - Anfänger-Themen 11
S Erste Schritte JComboBox Java Basics - Anfänger-Themen 1
S JCombobox und JButton verknüpfen Java Basics - Anfänger-Themen 6
S JComboBox automatisch füllen Java Basics - Anfänger-Themen 3
C JComboBox "Hilfstext" anzeigen Java Basics - Anfänger-Themen 11
T Datentypen Jcombobox Array Java Basics - Anfänger-Themen 1
J JComboBox in andere Klasse Java Basics - Anfänger-Themen 2
S Variablen auslesen beim JCombobox Java Basics - Anfänger-Themen 0
K JCombobox Eclipse Java Basics - Anfänger-Themen 7
D JComboBox erzeugen Java Basics - Anfänger-Themen 1
T JComboBox Java Basics - Anfänger-Themen 3
B ArrayLists in JCombobox Java Basics - Anfänger-Themen 10
M JComboBox und ItemListener/ItemEvent Problem Java Basics - Anfänger-Themen 3
M JComboBox Auswahl Java Basics - Anfänger-Themen 10
N Compiler-Fehler JComboBox DefaultListCellRenderer Java Basics - Anfänger-Themen 2
J JComboBox - Auswahl auslesen Java Basics - Anfänger-Themen 2
J jcombobox.getSelectedItem - nullpointerexception Java Basics - Anfänger-Themen 3
C JComboBox setSelectedItem(Object) Problem Java Basics - Anfänger-Themen 5
M JComboBox Obergrenzen/Untergrenze festlegen? Java Basics - Anfänger-Themen 5
B JComboBox(editable) Java Basics - Anfänger-Themen 6
K JComboBox hat volle Höhe uber das gesamte JPane, warum? Java Basics - Anfänger-Themen 2
S JComboBox mit ArrayList füllen Java Basics - Anfänger-Themen 7
C Ausgewähltes Element einer JCombobox in JTextField Java Basics - Anfänger-Themen 3
S JComboBox füllen Java Basics - Anfänger-Themen 9
C JComboBox Java Basics - Anfänger-Themen 9
R Auf auswahl in ner JComboBox reagieren Java Basics - Anfänger-Themen 3
T Frage zu JComboBox Java Basics - Anfänger-Themen 6
G JComboBox wird nicht gezeichnet Java Basics - Anfänger-Themen 3
N JComboBox mit Dateinamen befüllen Java Basics - Anfänger-Themen 7
M JComboBox => Item String => Color Java Basics - Anfänger-Themen 2
StrikeTom Editable JComboBox + enter Wie??? Java Basics - Anfänger-Themen 3
J JComboBox Listener Java Basics - Anfänger-Themen 6
F Werte aus JComboBox auslesen und Zahlen zuordnen Java Basics - Anfänger-Themen 5
S JComboBox Platzhalter Java Basics - Anfänger-Themen 7
J jComboBox auf default setzen wie? Java Basics - Anfänger-Themen 3
J daten über jComboBox ausgeben wie? Java Basics - Anfänger-Themen 2
S Vector -> String JComboBox Java Basics - Anfänger-Themen 11
E JComboBox Java Basics - Anfänger-Themen 4
J jComboBox.getSelectedIndex() Java Basics - Anfänger-Themen 8
J Funktion Auslösen über JComboBox Java Basics - Anfänger-Themen 2
T JComboBox klappt nur ein- bis zweimal auf Java Basics - Anfänger-Themen 30
S Kein Event bei Click auf JComboBox Java Basics - Anfänger-Themen 4
Developer_X JComboBox getSelectedFilè??? Java Basics - Anfänger-Themen 4
T Daten eines Ordners in JCombobox anzeigen Java Basics - Anfänger-Themen 5
M Einträge in JComboBox farblich hinterlegen? Java Basics - Anfänger-Themen 2
6 Dritte JComboBox in Abhaengigkeit von zwei vorherigen Java Basics - Anfänger-Themen 4
G 2. JComboBox in Abhängigkeit der 1. JCombobox füllen Java Basics - Anfänger-Themen 2
S Problem mit JComboBox Java Basics - Anfänger-Themen 9
H jcombobox mit nur einem Item Java Basics - Anfänger-Themen 7
G Inhalt einer JComboBox wechseln Java Basics - Anfänger-Themen 5
G Problem mit JComboBox Java Basics - Anfänger-Themen 15
G JComboBox Strukturiert anzeigen Java Basics - Anfänger-Themen 6
Schandro Hotkeys bei JComboBox abschalten Java Basics - Anfänger-Themen 3
G JComboBox soll beim Öffnen eine andere JCB öffnen Java Basics - Anfänger-Themen 2
P Hilfe für JComboBox, bmp einbinden/bestimmte punkte auf bmp Java Basics - Anfänger-Themen 3
G JComboBox - BasicComboPopup Java Basics - Anfänger-Themen 4
S Inhalt der JComboBox vergrößtert die JCB ? Java Basics - Anfänger-Themen 2
B Werte aus einer JCombobox in eine Liste Java Basics - Anfänger-Themen 16
mwildam JComboBox FocusGained feuert nicht wenn editable Java Basics - Anfänger-Themen 4
F ComboBox im Vektor auslesen, Vektor<JComboBox> Java Basics - Anfänger-Themen 6
S Jcombobox und 2maliges anzeigen wegen ItemStateChanged? Java Basics - Anfänger-Themen 3
W setModel feuert ActionEvent bei JComboBox Java Basics - Anfänger-Themen 2
G Frage zu JComboBox Java Basics - Anfänger-Themen 2
W Actionlistener oder Itemlistener bei JCombobox ? Java Basics - Anfänger-Themen 4
G JComboBox Java Basics - Anfänger-Themen 7
G JComboBox macht Probleme Java Basics - Anfänger-Themen 7
G JComboBox alphabetisch sortieren Java Basics - Anfänger-Themen 2
D Locale zur Laufzeit über JComboBox laden? Java Basics - Anfänger-Themen 17
G JComboBox um eine Methode erweitern Java Basics - Anfänger-Themen 2
G jcombobox deaktivieren Java Basics - Anfänger-Themen 4
M Werte aus Jcombobox sollten als int-Werte zurück gegeben . Java Basics - Anfänger-Themen 7
D Items in JComboBox überprüfen Java Basics - Anfänger-Themen 3
G JComboBox zweckentfremden ? Java Basics - Anfänger-Themen 5
N JCombobox Pfeil nach unten bild auf linke seite, geht das? Java Basics - Anfänger-Themen 8
T JComboBox Problem Java Basics - Anfänger-Themen 4
D JComboBox titel Java Basics - Anfänger-Themen 16
M füllen JComboBox funktioniert nicht Java Basics - Anfänger-Themen 11
J JCombobox Item auswählen Java Basics - Anfänger-Themen 13
A Text einer JComboBox während der Laufzeit ändern ? Java Basics - Anfänger-Themen 4
dercheffe 3x jcombobox nacheinander füllen Java Basics - Anfänger-Themen 6
J Inhalt der JComboBox variable Java Basics - Anfänger-Themen 2
O JComboBox Item soll sich als String speichern Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben