IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Récupérer un choice


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 121
    Par défaut Récupérer un choice
    Bonjour,

    Je suis en train de développer une application en java de gestion de professeurs.
    Je souhaiterai récupérer la valeur d'un choix effectuer dans un élément de type JChoice afin de mettre une condition dessus pour pouvoir créer un autre JChoice à partir du 1° choix.

    Je mets une copie d'écran de la fenêtre afin de me faire comprendre:

    Lors du choix d'un professeur, je souhaite créer la liste de modules correspondant.

    Je pense qu'il faut utiliser la méthode: getSelectedItem pour le 1° JChoice mais je n'arrive pas à le faire fonctionner correctement.

    Pourriez vous m'éclairer concernant mon problème?
    Si mon idée est mauvaise, n'hésitez pas car je débute en java.

    Merci d'avance

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 11
    Par défaut
    Hello,

    Voila un solution possible avec des objets String en guise de professeurs et de modules.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
     
    import java.awt.FlowLayout;
     
    import javax.swing.DefaultComboBoxModel;
    import javax.swing.JComboBox;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.border.EmptyBorder;
     
     
    public class Prof extends javax.swing.JFrame {
     
    	private javax.swing.JComboBox jcbProfs;
    	private javax.swing.JComboBox jcbModules;
    	private javax.swing.JLabel jLabel1;
    	private javax.swing.JLabel jLabel2;
     
     
        public Prof() {
            initComponents();
        }
     
     
    	private void initComponents() {
     
    		jcbProfs = new JComboBox();
    		jcbModules = new JComboBox();
    		jLabel1 = new JLabel();
    		jLabel2 = new JLabel();
     
    		setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    		jLabel1.setText("Profs:");
     
    		jcbProfs.setModel(new DefaultComboBoxModel(new String[] {
    				"Prof 1", "Prof 2", "Prof 3" }));
    		jcbProfs.addItemListener(new java.awt.event.ItemListener() {
    			public void itemStateChanged(java.awt.event.ItemEvent evt) {
    				jcbProfsItemStateChanged(evt);
    			}
    		});
     
    		jLabel2.setText("Modules:");
     
    		miseAJourModules();
     
    		JPanel panel = new JPanel(new FlowLayout());
     
    		jLabel1.setBorder(new EmptyBorder(0,5,0,0));
    		panel.add(jLabel1);
    		panel.add(jcbProfs);
    		jLabel2.setBorder(new EmptyBorder(0,15,0,0));
    		panel.add(jLabel2);
    		panel.add(jcbModules);
     
    		this.getContentPane().add(panel);
    		pack();
    	}
     
    	private void jcbProfsItemStateChanged(java.awt.event.ItemEvent evt) {
    	miseAJourModules();
    	}
     
     
    private void miseAJourModules() {
    	String selectedProf = (String) jcbProfs.getSelectedItem();
    	jcbModules.setModel(new DefaultComboBoxModel(new String[] {
    			"Module  1 - " + selectedProf , "Module 2 - "  + selectedProf, "Module 3 - " + selectedProf}));
    }
     
        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    new Prof().setVisible(true);
                }
            });
        }
    }
    En deux mots il faut faire appel a un addItemListener sur la comboBox de professeurs pour qu'elle declenche la mise a jour de la comboBox de modules.

    Sinon petit conseil en voyant ton interface, il y a des IDE evolué comme Netbeans qui offre des fonctionalites pour creer des interfaces facilement avec un resultat qui sera bien meilleur que ton exemple

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 121
    Par défaut
    Merci beaucoup pour cette aide, j'ai réussi à utiliser ton exemple.

    Concernant NetBeans, je l'ai découvert après avoir fait la fenêtre montrée sur le screenshot. Depuis, je l'utilise pour la partie "graphisme" de mon appli.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment récupérer le nom du fichier sans l'extension ?
    Par altahir007 dans le forum Langage
    Réponses: 16
    Dernier message: 13/11/2009, 13h20
  2. Récupérer 10 nb différents avec un calcul aléatoire
    Par BXDSPORT dans le forum Langage
    Réponses: 3
    Dernier message: 04/08/2002, 02h35
  3. récupérer la valeur de sortie d'un thread
    Par jakouz dans le forum Langage
    Réponses: 3
    Dernier message: 31/07/2002, 11h28
  4. Réponses: 11
    Dernier message: 23/07/2002, 14h33
  5. Comment récupérer une adresse MAC ?
    Par psau dans le forum Développement
    Réponses: 7
    Dernier message: 19/07/2002, 17h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo