[ALG3ir-Java] Ajouter des composants à vif

Voir le sujet précédent Voir le sujet suivant Aller en bas

[ALG3ir-Java] Ajouter des composants à vif

Message  Gold le Mer 23 Déc 2009, 22:35

Bonjour,

voilà je tourne en rond depuis des heures , c'est pourquoi je viens vous demander votre aide..
Je m'explique j'ai une fenêtre ( JFrame) dans laquelle il y a un JPanel. Dans celui-ci j'aimerais ajouter des éléments ou bien en retirer pendant l'exécution. C'est a dire que certains boutons ou autres éléments apparaissent en fonction de certaines actions de l'utilisateur et vice versa. J'essaye d'ajouter , mais je n'arrive pas a "raffraichir" ma fenêtre. J'ai fait des recherches mais je n'ai rien trouvé de concluant à part "repaint()" mais ca ne marche pas dans ce contexte.

Voila, est ce que vous pourriez m'aider ..

Joyeux Noël à tous !! santa

Gold

Nombre de messages : 163
Prénom : Alain
Statut : Etudiant
Date d'inscription : 29/12/2006

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  Wark le Mer 23 Déc 2009, 23:44

validate() ou updateUI() ?

Wark

Nombre de messages : 682
Age : 29
Prénom : Cédric
Statut : Diplômé 2010
Localisation : Braine l'alleud
Date d'inscription : 04/02/2008

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  mcd le Jeu 24 Déc 2009, 10:49

J'essaierais aussi
Code:
panel.invalidate(); panel.add(qqchose); panel.validate();
Çà provoque un recalcul du layout.

mcd

Nombre de messages : 1548
Prénom : Marco
Statut : prof
Localisation : Molenbeek
Date d'inscription : 29/09/2006

http://mcd.namok.be

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  Gold le Jeu 24 Déc 2009, 12:29

UpdateUI() testé,pas concluant, je vais essayer le validate() et je vous dis quoi Wink

EDIT : Et non malheuresement invalidate/validate ne marche pas non plus Crying or Very sad . Je crois que je vais devoir laisser tomber l'idée et trouver un autre moyen ( nouvelle fenetre ou autres Neutral Sad )


Dernière édition par Gold le Jeu 24 Déc 2009, 14:54, édité 1 fois

Gold

Nombre de messages : 163
Prénom : Alain
Statut : Etudiant
Date d'inscription : 29/12/2006

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  SK le Jeu 24 Déc 2009, 14:10

Note à part, n'oublie pas de faire un pack() dans ton Frame si jamais tu ajoutes des éléments trop gros pour l'emplacement prévu. Je ne connais pas ton problème exacte mais éventuellement tu peux d'avante mettre tous les éléments et jouer avec setVisible(bool) ; mais à nouveau ça dépend du contexte Wink

SK

Nombre de messages : 221
Age : 29
Prénom : Sébastien
Statut : ancien
Localisation : Braine-l'Alleud
Date d'inscription : 12/12/2006

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  mcd le Jeu 24 Déc 2009, 16:11

Est-ce que le contenu devient correct quand tu agrandis ta fenêtre avec la souris ?

mcd

Nombre de messages : 1548
Prénom : Marco
Statut : prof
Localisation : Molenbeek
Date d'inscription : 29/09/2006

http://mcd.namok.be

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  pbt le Jeu 24 Déc 2009, 18:01

En deuxième, j'utilise un Panel avec un GridBagLayout (et les contraintes GridBagConstraint qui vont bien) et un add suivi d'un updateUI (un revalidate devrait suffire) me met à jour le panel ...

(Plus de détails après le dinde ;-) si tu n'en sors pas ...)

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  Gold le Sam 02 Jan 2010, 03:18

Bonsoir,
Tout d'abord bonne année à tous, j'espère que vous avez passé de bonnes fêtes moi j'étais malade No .
Merci pour vos réponses, j'avais décidé de passer à autre chose et me revoilà sur mon problème, j'ai un peu chipoté et effectué quelques tests et trouvé peut-être un moyen de résoudre mon problème, cependant quelque-chose de bizarre se pose que je ne comprend pas.

Alors supposons mon Bean :
Code:

 placesTab2 = new PlacesTab();

Le code suivant marche et m'affiche bien ce que je veux :

Code:

JFrame fen = new JFrame("test");
fen.add(placesTab2);
fen.setVisible(true);
fen.pack();

Tandis que le code suivant m'affiche une fenêtre vide :
Code:

JFrame fen = new JFrame("test");
JPanel pan= new JPanel();
pan.add(placesTab2);
fen.add(pan);
pan.setVisible(true);
fen.setVisible(true);
fen.pack();

Je ne comprend pas pourquoi, rajouter un layout au panel et a la fenetre ne change rien. Si quelqu'un a une idée je suis vraiment preneur... Neutral. Mon Bean hérite de JPanel.

Merci d'avance et bon bloc' à tous Smile

Gold

Nombre de messages : 163
Prénom : Alain
Statut : Etudiant
Date d'inscription : 29/12/2006

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  pbt le Sam 02 Jan 2010, 17:57

Avec un JButton à la place de ton bean, ça fonctionne bien ... donc c'est peut-être du à la taille de ton bean (en a-t-il une ?).

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  Gold le Dim 03 Jan 2010, 18:54

Mon Bean n'a effectivement pas de taille fixe , je vais continuer mes tests..
Merci Smile

Gold

Nombre de messages : 163
Prénom : Alain
Statut : Etudiant
Date d'inscription : 29/12/2006

Revenir en haut Aller en bas

Re: [ALG3ir-Java] Ajouter des composants à vif

Message  Contenu sponsorisé Aujourd'hui à 05:22


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum