Java : interface swing

Fermé
anne - 17 mars 2002 à 20:04
 Utilisateur anonyme - 19 mars 2002 à 13:15
bonsoir
comment est il possible de lancer une deuxiéme fenêtre ou un programme à partir d'un bouton "envoyer" (c'est à dire remplacer la methode
> systems.exit(0) par autre chose (autre fenêtre ou programme java sans l'interface graphique)

merci pour vos réponses
A voir également:

3 réponses

hub Messages postés 50 Date d'inscription jeudi 6 septembre 2001 Statut Membre Dernière intervention 2 avril 2002 7
18 mars 2002 à 12:36
La commande System.exit(0) ferme tout ce qui concerne l'application en cours.

Personnellement, je travaille de la manière suivante (elle vaut ce qu'elle vaut mais ça marche pas trop mal).


Une classe "main" qui lance l'application, la vue, les différentes param.

Une classe de type JFrame avec un JMenuBar, cette vue principale est initiée par la classe main.

A partir de là créer différentes JFrame filles qui sont affichées à la demande et lorsque elle ne servent plus, rendu invisibles par la commande setVisible(false). Chaque JFrame fille connait la JFrame principale et inversement. De cette manière, l'ouverture ou la fermeture des différentes vues sont initiées à partir de la vue principale (à partir du JMenubar par ex). De plus, la fermeture d'un JFrame fille ne stoppera pas l'application, étant indépendante.
Même principe, si la JFrame principale ne doit plus être affichée, utiliser setVisible(false), mais bon c'est parfois dangereux si on prévoit pas un retour à l'état original.

petit exemple:

à partir de la Frame principale, initialisation d'une frame fille.


private ConsoleFrame consoleFrame;

//affiche la JFrame fille
public void setConsoleView(){
consoleFrame = Console.getInstance();
consoleFrame.setMother(this);
consoleFrame.show();
}

public void removeConsoleFrame(){

consoleFrame = null;
}

//Vue à partir de la JFrame fille, pour fermer la fenêtre.

// dans le constructeur de la Frame.

addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
exitForm();
}
}
);

private void exitForm() {
if(JOptionPane.showConfirmDialog(null,"Do you really want to close the Console?","Question",JOptionPane.OK_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE)==0){
this.setVisible(false);
mother.removeConsoleView();
}
}

bonne chance

uboot
0
merci
pour cette réponse
mais n'y a t'il pas plus simple juste pour au clic sur bouton sortir d'une fenêtre swing :
appeler une class main qui renvoie la suite sur la fénêtre DOS avec exécution d'un programme tout simple et classique

cela étant merci pour les conseils
0
hub Messages postés 50 Date d'inscription jeudi 6 septembre 2001 Statut Membre Dernière intervention 2 avril 2002 7
19 mars 2002 à 08:39
ben si tu te réfère à la methode exitForm() tu peux ajouter l'appel de ta class main, mais faut que tu évites le system.exit(0) en le remplaçant par setVisible(false);

private void exitForm(){
this.setVisible(false)
// appel à une classe main,
ClassMain.main(args[]);
// ou alors un autre prog ici par ex notepad mais y'en a d'autre
try{
Runtime.getRuntime().exec("notepad.exe");}
catch(IOException ioe){
JOptionPane.showMessageDialog(null,"Error on the initialisation of notepad.exe, "+"\n"+"please check your configuration system","Warning",JOptionPane.WARNING_MESSAGE);
}

}

uboot
0
E qwê Andréééiiiiiii...

on essaie de me voler la vedette sur le forum Java CCM?


;-)
HackTrack
(.... dit Cindy Tavier !)
0
hub Messages postés 50 Date d'inscription jeudi 6 septembre 2001 Statut Membre Dernière intervention 2 avril 2002 7 > HackTrack
19 mars 2002 à 11:53
ah! ben je fais ce que je peux cow boy

uboot
0
Utilisateur anonyme > HackTrack
19 mars 2002 à 13:15
Prouve que tu peux faire mieux en répondant à ma question ;-)

http://www.commentcamarche.com/forum/affich-67931?full>
0