elis88 Δημοσ. 8 Απριλίου 2008 Δημοσ. 8 Απριλίου 2008 Καλησπέρα, Σε ένα πρόγραμμα java που φτιάχνω θέλω να βάλω JComboBox. Αντιμετοπίζω όμως το εξής πρόβλημα, στο combobox αυτό βάζω κάποια String το οποίο String πάει σε μια μεταβλητή για να εκτελεστεί μία μέθοδος. Το πρόβλημα είναι ότι όταν χρησιμοποίω την μέθοδο getSelectedItem(), μου δίνει το πρώτο στοιχείο που υπάρχει στο ComboBox το οποίο από default είναι selected. Πως μπορώ να πάρω ένα στοιχείο το οποίο θα επιλέξει ο χρήστης και όχι το πρώτο που υπάρχει στη λίστα του ComboBox; Ευχαριστώ και ελπίζω να μην σας κουράσω
elis88 Δημοσ. 8 Απριλίου 2008 Μέλος Δημοσ. 8 Απριλίου 2008 Τελικά έβγαλα άκρη, βάζοντας το ComboBox ως πεδίο και με κάνοντας το select με ένα ActionListener. Αν και γενικά η λύση μου φένεται λίγο άκομψη. Θα ήθελα να ακούσω και κάποια άλλη γνόμη.
alex2005 Δημοσ. 8 Απριλίου 2008 Δημοσ. 8 Απριλίου 2008 Μπορείς να ποστάρεις τον κώδικά σου? Γιατί θα έπρεπε να δουλεύει το getSelectedItem(),και πιστεύω πως κάτι άλλο παίζει στην εφαρμογή σου.
elis88 Δημοσ. 8 Απριλίου 2008 Μέλος Δημοσ. 8 Απριλίου 2008 Τον άλαξα τώρα τον κώδικα. Δούλευει η μέδος getSelectedItem() απλά δεν δούλευε σωστά γιατι δεν το είχα βάλει ως ActionListener, το είχα βάλει στην ίδια μεθοδο που έχω τον ComboBox κλπ με αποτέλεσμα να μου έφερνε το πρώτο στοιχείο του comboBox αντί αυτό που επιλέγω.
elis88 Δημοσ. 8 Απριλίου 2008 Μέλος Δημοσ. 8 Απριλίου 2008 Τελικά δεν τρέχει αυτό που έκανα, μου βγάζει run time erros. Μια σελίδα από erros. Με το που πατάω το κουμπί που έφτιαξα μου πετάει τα errors στην dos. Κώδικας: > public void match2() { frame = new JFrame("Match"); Container content = frame.getContentPane(); content.setLayout(new FlowLayout() ); box1 = combo(); box2 = combo2(); box3 = combo(); box4 = combo2(); content.add(box1); content.add(box2); content.add(box3); content.add(box4); JButton b1 = new JButton("Kataxorisi"); b1.addActionListener(new MyButton()); content.add(b1); frame.pack(); frame.setVisible(true); } class MyButton implements ActionListener { public void actionPerformed(ActionEvent e) { String gamer1 = String.valueOf(box1.getSelectedItem()); String gamer2 = String.valueOf(box3.getSelectedItem()); int skor1 =Integer.parseInt(String.valueOf(box3.getSelectedItem())); int skor2 =Integer.parseInt(String.valueOf(box3.getSelectedItem())); c.match(gamer1, gamer2, skor1, skor2); } } public JComboBox combo2() { JComboBox b = new JComboBox(); for(int i=0;i<=15;i++) { b.addItem(i); } return b; } public JComboBox combo() { Config c1 = new Config(); JComboBox box = new JComboBox(); ArrayList<Gamer> list = c1.getGamers(); for(int i=0;i<list.size();i++) { box.addItem(list.get(i).getName()); } return box; }
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.