cs_seb87
Messages postés37Date d'inscriptionvendredi 9 janvier 2004StatutMembreDernière intervention 6 septembre 2004
-
2 juin 2004 à 15:16
cs_seb87
Messages postés37Date d'inscriptionvendredi 9 janvier 2004StatutMembreDernière intervention 6 septembre 2004
-
3 juin 2004 à 07:50
J'ai créé 3 classes pour gérer une interface graphique en swing.
J'ai séparé parceque cela me semblait plus simple que de faire une seule "grosse classe".
maintenant que je veux rajouter des evenements. je dois appeler des méthodes d'une classe depuis des composants d'une autre classe.
En pratique j'ai un bouton dans une classe qui doit me permettre de modifier la valeur d'un JLabel dans la barre d'état .
j'ai donc dérivé la classe qui gére l'affichage principal (extends ma classe) pour accéder aux méthodes.
La méthode est bien appelé par contre cela ne change pas la valeur de mon JLabel. Alors que si j'appelle la methode dans sa propre classe il n'ya pas de probleme.
est ce la structure de mon programme qui n'est pas bonne. Pour l'instant j'en suis juste au début, je peux donc encore changé la structure sans trop de problème . Si une bonne âme pouvait m'aider.
dmaillet
Messages postés500Date d'inscriptionmercredi 20 août 2003StatutMembreDernière intervention11 juillet 2007 2 juin 2004 à 17:07
hum,. c'est un peu court pour puvoir diagnostiquer...
un peu de ton code, voir tout serait bienvenue pour t'aider...
Mais comme toujours, ca doit etre un ch'tit bug a la con...
-------------------
>:) dams >:)
-------------------
cs_seb87
Messages postés37Date d'inscriptionvendredi 9 janvier 2004StatutMembreDernière intervention 6 septembre 2004 2 juin 2004 à 17:27
ben surement comme je debute ....
public class CreateDefectPanel extends CreateWnd {
private JButton Annuler = new JButton("Annuler");
private JButton saisie = new JButton("Saisie");
... (suite des declaration)
saisie.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
//C la que j'appelle la fonction
SetBarreEtat("Ca marche");
}
});
return DefectPan;
}
}
===========================================
ma classe principale
============================================
public class CreateWnd extends JPanel {
private JTabbedPane tab;
public static void main(String[] args)
{
CreateWnd Wnd = new CreateWnd();
Wnd.setName("Visual Control");
Wnd.Init();
Wnd.SetSize(800,600);
Wnd.NewWnd();
}
public void Init()
{
//Creation de la fenetre
fenetre = new JFrame(this.NmWindow);
EndComment.setFont(new Font("Dialog", java.awt.Font.BOLD, 12));
EndComment.setForeground(new Color(0,51,255));
Setserial("EP2503569");
}
....
//Fonction appelée
public void SetBarreEtat(String Comment)
{
EndComment.setText(Comment);
}
public void NewWnd()
{
....
Container panneau = fenetre.getContentPane();
panneau.setLayout(new BorderLayout(5,5));
panneau.add(this.AddNorth(),BorderLayout.NORTH);
//ajout de ma barre d'état EndComment.setBorder(BorderFactory.createLoweredBevelBorder());
panneau.add(EndComment,BorderLayout.SOUTH);
AddTab();
panneau.add(tab,BorderLayout.CENTER);
cs_seb87
Messages postés37Date d'inscriptionvendredi 9 janvier 2004StatutMembreDernière intervention 6 septembre 2004 3 juin 2004 à 07:50
Je sais que c'est pas evident comme ca, mais ya un truc que j'ai du oublié quelques part? parceque c'est une fonction basique qui me permet de mettre le texte que je veux dans ma barre d'état.
A la base c'est pas primordiale , mais ca me permet de vérifier si ma démarhe est le bonne pour la suite du developpement. Et en l'occurence ya quelque chose qui cloche
>:)