7
votes

NetBeans - Saisie d'articles dans un JCOMBOBOX

J'ai généré une interface graphique à partir de Netbeans dans laquelle j'ai placé une combinaison de ComboBox.

Par défaut, les éléments de Combobox sont éléments1, élément2, élément1, élément2, élément4, élément4. p>

mais je veux le mien éléments. NetBeans ne permet pas de modifier le code généré, alors comment puis-je modifier le COMNBOBOX selon moi. P>

Remarque: Je connais une méthode en modifiant la propriété "modèle" de ce JCOMBOBOX mais je ne veux pas faire C'est comme ça parce que je veux divers articles (qui sont dans un tableau) dans ce JCOMBOBOX, je veux donc transmettre ce tableau dans ce JCOMBOBOX comme suit: P>

jComboBox2 = new javax.swing.JComboBox();

String [] date = new String[31];
for(int i = 0; i < 31; i++) {
    date[i] = i + 1;
}

jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(date));


0 commentaires

6 Réponses :


2
votes

Vous pouvez injecter votre code en utilisant la fonction "Code personnalisé" dans l'éditeur d'interface graphique pour le "modèle" de comboBox


0 commentaires

7
votes

Il y a 2 approches que je suis au courant:

  1. approche simple - après l'appel à initComponents () code> dans le constructeur ajoutez votre code pour créer votre modèle et appeler jCommobox2.setmodel (myModel) code> pour définir ce. Donc, le constructeur ressemblerait à quelque chose comme: p>

    private ComboBoxModel getComboBoxModel()
    {
        String[] items = {"Item A", "Item B", "Item C"};
        return new DefaultComboBoxModel(items);
    }
    
  2. Approche complexe - ajoutez une propriété lisible qui contient le modèle souhaité. Par exemple: p>

    public SomeClass() {
        initComponents();
        String [] date = new String[31];
        for(int i = 0; i < 31; i++) {
            date[i] = i + 1;
        }
        jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(date));
    }
    


0 commentaires

0
votes

Compléter la réponse à Bluec (Je ne peux pas encore commenter), dans l'éditeur d'interface graphique, sélectionnez le ComBoxBox, Go Propriétés, puis le modèle, puis frappez les trois points. Ensuite, sélectionnez Code Custome et ajoutez votre code, par exemple:

new DefaultComboBoxModel<>(functionThatReturnsAnStringArray())


0 commentaires

3
votes

Utilisation de NetBeans Neon et d'autres NetBeans Version

1. Allez sur les propriétés de la combinaison

 Entrez la description de l'image ici

2. Ensuite, allez au modèle

 Entrez la description de l'image ici


0 commentaires

1
votes
public NewJFrame() {
        initComponents();
        reformatComboBox();
  }

private void reformatComboBox() {
        JComboBoxName.removeAllItems();
        JComboBoxName.addItem("item1");
        JComboBoxName.addItem("item2");
}

1 commentaires

Veuillez inclure le commentaire sur la raison pour laquelle cette solution fonctionne et répond à la question



0
votes

pour la postérité:

Cliquez avec le bouton droit sur la touche ComboBox et sélectionnez Personnaliser le code . Ici sur le ComboBox.setmodel, dans la zone de gauche de gauche propriété personnalisée . Après une nouvelle chaîne, ajoutez vos valeurs dans le formulaire suivant:

valeur 1: INTEGER.TOSTRING (MYINT1) Valeur 2: INTEGER.TOSTRING (MYINT2)

Si vos variables sont en Int bien sûr. Si vous ne pouvez pas simplement mettre la variable de chaîne et que vous avez terminé.

J'espère que cela aide.


0 commentaires