Changement d'interface d'une fenetre

justine -  
choubaka Messages postés 39986 Date d'inscription   Statut Modérateur Dernière intervention   -
je sais le sujet n'est pas très clair alors je vais essayé d'expliqué au mieux mon problème

j'essaye de creer un programme qui puisse chercher, supprimer, mettre à jour et inserer des elements dans une base de données.

j'ai trouvé un code interessant, qui en cliquant sur le bouton "supprimer" par exemple, change le type de la fenetre.
c'est à dire sur la fenetre de départ, il y a 5 boutons (chercher, supprimer, mette à jour et inserer)

celon mon code (qui marche à l'origine qu'avec un seul bouton) lorsque je clique sur ce bouton, l'interface change mais je ne sais pas comment faire pour avoir plusieurs interfaces differentes en fonction du bouton.

voici mon code :

classe "AppliWindowEvent" ==> 1ere interface du programme

package com.changement.test;
import java.awt.*;
import java.awt.event.*;
import com.changement.outil.*;

/**
* <p>Titre : changement de couleur, de texte, de libelle, de titre</p>
* <p>Description : </p>
* <p>Copyright : Copyright (c) 2005</p>
* <p>Société : </p>
* @author
* @version 1.0
*/
class AppliWindowEvent
{
public static void main(String[]arg)
{
Frame fen = new Frame ("Bonjour Techniclim");
fen.setBounds(200,200,350,220);
fen.setLayout(new FlowLayout());
Button chercher = new Button("CHERCHER");
Button supprimer = new Button("SUPPRIMER");
Button maj = new Button("METTRE A JOUR");
Button inserer = new Button("INSERER");
Button quitter = new Button("QUITTER L'APPLICATION");

Label texte = new Label("Cette ligne est du texte");

chercher.addActionListener(new ListenerGeneral(chercher, texte, fen));
supprimer.addActionListener(new ListenerGeneral(supprimer, texte, fen));
maj.addActionListener(new ListenerGeneral(maj, texte, fen));
inserer.addActionListener(new ListenerGeneral(inserer, texte, fen));
quitter.addActionListener(new ListenerQuitter());
fen.add(texte);
fen.add(chercher);
fen.add(supprimer);
fen.add(maj);
fen.add(inserer);
fen.add(quitter);
fen.setVisible(true);

}
}

classe "ListenerGeneral" ==> 2eme interface

package com.changement.outil;
import java.awt.*;
import java.awt.event.*;

/**
* <p>Titre : changement de couleur, de texte, de libelle, de titre</p>
* <p>Description : </p>
* <p>Copyright : Copyright (c) 2005</p>
* <p>Société : </p>
* @author
* @version 1.0
*/

public class ListenerGeneral implements ActionListener
{
Label etiq;
Frame win;
Button bout;
// constructeur :
public ListenerGeneral(Button bouton, Label etiquette, Frame window)
{
this.etiq = etiquette;
this.win = window;
this.bout = bouton;
}
public void actionPerformed(ActionEvent e)

// Actions sur l'etiquette, la fenetre, le boutton lui même :
{
etiq.setText("changement");
win.setTitle("Nouveau titre");
win.setBackground(Color.yellow);
bout.setLabel("Merci");
}
}

classe "ListenerQuitter" ==> ferme l'application

package com.changement.outil;
import java.awt.*;
import java.awt.event.*;

/**
* <p>Titre : changement de couleur, de texte, de libelle, de titre</p>
* <p>Description : </p>
* <p>Copyright : Copyright (c) 2005</p>
* <p>Société : </p>
* @author
* @version 1.0
*/
public class ListenerQuitter implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}

MERCI BEAUCOUP POUR VOTRE AIDE
à bientôt
A voir également:

2 réponses

Utilisateur anonyme
 
salut

tu peux faire plusieurs panel comprenant chacun l'interface que tu souhaites,
et les afficher ou les cacher selon le bouton sur lequel on appuie avec

monpanel1.setVisible(true) ou false.
0
choubaka Messages postés 39986 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
Salut

je pense qu'il vaut mieux s'orienter vers les JFRames, en utilisant l'objet container pour y insérer les différents JPanel. La fenêtre ne change pas, seulement les JPanel contenus dans le container.
0