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

Agents de placement/Fenêtres Java Discussion :

Continuer uniquement après une action de l'utilisateur


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2012
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Août 2012
    Messages : 14
    Points : 6
    Points
    6
    Par défaut Continuer uniquement après une action de l'utilisateur
    Bonjour a tous ,
    Voici mon problème :
    Dans la classe ConvAndTrans (fenêtre JFrame) j'appelle la méthode SelectChoice de la classe HostChoice. Cette méthode crée une nouvelle fenêtre dans laquelle l'utilisateur est sensé faire un choix dans une combobox puis le valider en cliquant sur ok.
    Problème, l’exécution continue dans la classe ConvAndTrans avant que l'utilisateur n'est pu intervenir .
    J'aimerai que l'utilisateur puisse faire son choix puis le valider avant le retour dans la classe ConvAndTrans.

    Voici les extraits de code :

    Classe ConvAndTrans

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    HostChoice host = new HostChoice();
    	host.SelectChoice();
    	System.out.println("conv " + host.getChoice());
    	if (host.isButtonOk()) {
    		LoginPortefeuilleJFrame login = new LoginPortefeuilleJFrame();
            }
    Classe HostChoice

    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
    public class HostChoice extends JFrame {
     
    	private JComboBox hostType;
    	private JLabel hostTypeLabel;
    	private String choice;
    	private boolean buttonOk =false;
     
     
    	public HostChoice() {
    	}
     
    	public void SelectChoice() {
     
    		this.setTitle("Connection");
    		this.setSize(300, 200);
    		this.setLocationRelativeTo(null);
    		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		this.setVisible(true);
    		// combobox
    		JPanel panHostType = new JPanel();
    		panHostType.setBackground(Color.white);
    		panHostType.setPreferredSize(new Dimension(100, 100));
    		panHostType.setBorder(BorderFactory.createTitledBorder("Host Wahl"));
    		hostType = new JComboBox();
    		hostType.setPreferredSize(new Dimension(100, 30));
    		hostType.addItem("QQ");
    		hostType.addItem("QS");
    		hostType.addItem("Test");
    		hostTypeLabel = new JLabel("Host : ");
    		panHostType.add(hostTypeLabel);
    		panHostType.add(hostType);
    		// bouton
    		JPanel control = new JPanel();
    		JButton okBouton = new JButton("OK");
    		okBouton.addActionListener(new ActionListener() {
    			public void actionPerformed(ActionEvent e) {
    				// items selected
    				setChoice((String) hostType.getSelectedItem());
    				buttonOk = true;
    			}
    		});
    		JButton cancelBouton = new JButton("Back");
    		cancelBouton.addActionListener(new ActionListener() {
    			public void actionPerformed(ActionEvent arg0) {
    				setVisible(false);
    			}
    		});
    		control.add(okBouton);
    		control.add(cancelBouton);
    		this.getContentPane().add(panHostType, BorderLayout.CENTER);
    		this.getContentPane().add(control, BorderLayout.SOUTH);
    		this.setVisible(true);
     
    	}
     
     
     
    	public boolean isButtonOk() {
    		return buttonOk;
    	}
     
    	public void setButtonOk(boolean buttonOk) {
    		this.buttonOk = buttonOk;
    	}
     
    	public void setChoice(String choice) {
    		this.choice = choice;
    	}
     
    	public String getChoice() {
    		return choice;
    	}
     
    }
    Merci d'avance

  2. #2
    Membre éprouvé Avatar de fraco
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 750
    Points : 934
    Points
    934
    Par défaut
    Salut !

    Cette méthode crée une nouvelle fenêtre dans laquelle l'utilisateur est sensé faire un choix dans une combobox puis le valider en cliquant sur ok.
    avec un JDialog modal peut-être, au lieu d'une fenêtre ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jDialog1.setModalityType(Dialog.ModalityType.APPLICATION_MODAL);
    http://docs.oracle.com/javase/tutori...ts/dialog.html

Discussions similaires

  1. popup d'information après une action
    Par Immo dans le forum Struts 1
    Réponses: 1
    Dernier message: 03/08/2007, 17h21
  2. Réponses: 2
    Dernier message: 02/08/2007, 08h48
  3. Verrouiller une donnée après une action
    Par edonis dans le forum Access
    Réponses: 3
    Dernier message: 30/07/2007, 12h03
  4. Rendre le focus à champ de saisie après une action
    Par Gothico dans le forum WinDev
    Réponses: 3
    Dernier message: 24/10/2006, 16h21
  5. [VBA-E] attendre une action de l'utilisateur
    Par jouf dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/06/2006, 10h05

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