Προς το περιεχόμενο

Εχω πρόβλημα με JComboBox


thanossped

Προτεινόμενες αναρτήσεις

Δημοσ.

Μήπως θα μπορούσε να βοηθήσει κάποιος έχω ένα πρόβλημα με την Java.

Συγκεκριμένα δεν καταφέρνω να πάρω την τιμή από ένα πεδίο JComboBox

δηλαδή δηλώνω μία μεταβλητή τύπου String στην οποοία θέλω να αναθέσω

την τιμή που έχει εισάγει σε μία φόρμα ο χρήστης σε ένα πεδίο jComboBox.

Με ποιά συνάρτηση θα πρέπει να πάρω την τιμή που περιέχει?

Τόσο η "getText()" όσο και η "toString()" δεν μου επιστρέφουν την τιμή του.

Ξέρει κανείς ποιά πρέπει να χρησιμοποιήσω?

Σας ευχαριστώ πολύ.

Δημοσ.

private void prosthikijToggleButton1ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

InterfaceVardies first=(InterfaceVardies)this.getOwner();

if(evt.getSource()==prosthikijToggleButton1){

checkValues();

}

 

// συναρτηση

public void checkValues(); {

String day=String.valueOf(dayjComboBox1.getSelectedIndex());

if(day.equals("")){

JOptionPane.showMessageDialog(null,

"Λείπουν στοιχεία παρακαλώ συμπληρώστε τα",

"Ελλιπή Στοιχεία",JOptionPane.WARNING_MESSAGE);

}

Δημοσ.

Δοκίμασε μία την μέθοδο getSelectedItem();

 

π.χ.

>JComboBox box = new JComboBox();
String  x= (String) box.getSelectedItem();

Δημοσ.

Ενας πιο γενικος τροπος να δουλευεις με το combobox ειναι να εχεις μια δικια σου κλαση οπως την παρακατω

 

>
public class Item {

   private int id;
   private String description;

   public Item(int id, String description) {
       this.id = id;
       this.description = description;
   }

   public int getId() {
       return id;
   }

   public String getDescription() {
       return description;
   }

   public String toString() {
       return description;
   }
}

 

Μετα γεμιζεις το combobox με αντικειμενα αυτης της κλασης.

 

>
Vector my_vector = new Vector();

my_vector.addElement(new Item(1,item_desc_1));
my_vector.addElement(new Item(2,item_desc_2));

my_combobox = new JComboBox(my_vector);

Item item = (Item) my_combobox.getSelectedItem();

int my_int = item.getId();
String my_string = item.getDescription();

 

Για την ακριβεια, φτιαχνεις ενα vector απο items και ενα combobox βασισμενο σε αυτον το vector.

Μπορει να φαινεται πιο πολλη δουλεια για τη συγκεκριμενη περιπτωση που θες μονο ενα string αλλα θα ερθει και η στιγμη που θα θες να αποθηκευσεις και αλλες πληροφοριες εκει μεσα, και σε αυτην την περιπτωση, θα σου φανει ιδιαιτερα χρησιμο.

Το Item αν και δεν ειναι το ιδιο ενα string, στο combobox θα φαινεται σωστα (επειδη καλειται αυτοματα η toString για να αποφασισει τι θα σου δειχνει στο combobox).

Δημοσ.
Δοκίμασε μία την μέθοδο getSelectedItem();

 

π.χ.

>JComboBox box = new JComboBox();
String  x= (String) box.getSelectedItem();

 

Νομίζω και εγώ πως με αυτό θα είσαι comple...

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...