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));
6 Réponses :
Vous pouvez injecter votre code en utilisant la fonction "Code personnalisé" dans l'éditeur d'interface graphique pour le "modèle" de comboBox p>
Il y a 2 approches que je suis au courant:
approche simple - après l'appel à Approche complexe - ajoutez une propriété lisible qui contient le modèle souhaité. Par exemple: p>
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);
}
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));
}
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())
public NewJFrame() { initComponents(); reformatComboBox(); } private void reformatComboBox() { JComboBoxName.removeAllItems(); JComboBoxName.addItem("item1"); JComboBoxName.addItem("item2"); }
Veuillez inclure le commentaire sur la raison pour laquelle cette solution fonctionne et répond à la question
pour la postérité: p>
Cliquez avec le bouton droit sur la touche ComboBox et sélectionnez Personnaliser le code em>. Ici sur le ComboBox.setmodel, dans la zone de gauche de gauche propriété personnalisée em>.
Après une nouvelle chaîne, ajoutez vos valeurs dans le formulaire suivant: p>
valeur 1: INTEGER.TOSTRING (MYINT1)
Valeur 2: INTEGER.TOSTRING (MYINT2) P>
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é. P>
J'espère que cela aide. P>