JCombobox chaîne de l'élément (visible) et la clé entière (inhérent)
J'ai un schéma de base de données = ce qui sera montré dans un JCombobox comme un JTable colonne pour sélectionner un nom. Mais je veux que le champ de code à insérer (clé étrangère) dans une autre table.
Généralement, en sélectionnant un Élément dans la liste déroulante, apporter l'élément sélectionné de la zone de la zone de liste modifiable.
Ce que je veux faire, c'est que lors de la sélection d'un élément quelconque de caractères (string) dans la liste déroulante son entière correspondant à la clé (peut être triés carte) doit être indiqué dans la zone de liste déroulante de l'espace réservé de la zone, de sorte que, lorsque la valeur de la JTable.getValueAt(ligne, colonne), je reçois la clé entière, et non pas la chaîne de valeur de l'article.
S'il vous plaît aider moi comment je peux faire cela?
OriginalL'auteur karim | 2011-01-27
Vous devez vous connecter pour publier un commentaire.
Vous devez stocker un Objet dans le TableModel qui contient à la fois la chaîne de valeur de l'affichage et de la valeur de l'Entier de la clé. Ensuite, vous vous accédez à table.getValueAt(...) vous avez accès à l'objet contenant à la fois des éléments d'information.
Voici un exemple pour une autonome de zone de liste déroulante:
OriginalL'auteur camickr
J'ai une grande et solution intelligente:
Je set modèle pour
rolComboBox
avec un Vecteur avec un Objet personnalisé, leresultSet
objet contient toutes les données de la Base de Données.Après quand je veux obtenir l'id de la
comboBox
l'obtenir avec la méthodegetSelectedItem
.OriginalL'auteur Brayan Loayza
Car il n'y a pas de moyen automatique pour le faire :(.
Je suis l'aide d'une Carte à garder mes valeurs et mes clés.
Obtenir toutes les catégories (clé, valeur) et remplir la carte et combo
La quatrième colonne de ma JTable devrait être combobox,
Lors de la modification de la valeur dans la zone de liste déroulante, c'est montrer le texte, mais pour mettre à jour la valeur dans la table de base de données, je dois obtenir la clé entière.
Pour la base de données de mise à jour,
Et voici le getKeyForValue,
OriginalL'auteur karim