StackLayout en Swing

StackLayout en Swing - Java - Programmation

Marsh Posté le 05-08-2005 à 20:06:26    

Bonjour,
 
Dans mon application j'ai un JTabbedPane ainsi que plusieurs JPanel, lors d'un évenement, pour simplifier quand on change la selection dans un combo, le JTabbedPane et les JPanel doivent être remplacé par ceux correspondant à ma selection dans mon combo.
 
Je cherche la manière la plus propre de faire ça, pour une appli plus petite j'avais un truc pas très beau du style, on enleve tout du container et on refait tout. Là je voudrai tenter une solution avec des couche et n'afficher que la couche de l'élément selectionnée. J'ai réussit a faire ce que je voulais avec le StackLayout de SWT et je cherche l'équivalent Swing ou une autre technique viable. J'ai regardé du coté du LayeredPane mais je n'arrive pas à l'utiliser comme je veux, est ce que d'après vous on peut le faire avec ?
 
merci

Reply

Marsh Posté le 05-08-2005 à 20:06:26   

Reply

Marsh Posté le 06-08-2005 à 21:53:51    

tu peux jouer avec setContentPane()

Reply

Marsh Posté le 07-08-2005 à 09:06:09    

beemer a écrit :

tu peux jouer avec setContentPane()


 
ça m'obligerait a refaire toute ma frame
 
d'autres idées ?

Reply

Marsh Posté le 07-08-2005 à 10:33:31    

EpoK a écrit :

ça m'obligerait a refaire toute ma frame


pas vraiment non

Reply

Marsh Posté le 08-08-2005 à 12:20:56    

beemer a écrit :

pas vraiment non


 
tu peux développer ?

Reply

Marsh Posté le 08-08-2005 à 13:10:46    

on peut avoir une copie d'écran stp ?


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 09-08-2005 à 17:28:18    

nraynaud a écrit :

on peut avoir une copie d'écran stp ?


 
 
voila :
 
http://img341.imageshack.us/img341/3181/maket0rn.th.png
 
donc en fonction de la selection dans le jtree, le jtabbedpane doit changer ainsi que le panel infos et birdview.

Reply

Marsh Posté le 09-08-2005 à 17:34:31    

tu fabriques un objet qui rendrait disponible à la fois un TreeSelectionModel et un SingleSelectionModel.
 

Code :
  1. public class MarketSelectionModel {
  2.   public SingleSelectionModel getSingleSelectionModel() {
  3.     <pouet>
  4.   }
  5.   public TreeSelectionModel getTreeSelectionModel() {
  6.     <pouet>
  7.   }
  8. }


 
ces 2 instances devront être synchro de telle manière que l'action sur un des modèles fasse bouger l'autre (et envoie les évènements correspondants à ses listeners).
 
Bien entendu, le code manquant dépend de tes structures de données internes.


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 09-08-2005 à 19:35:41    

nraynaud :  
je pense pas que tu reponds a sa question ou c'est moi qui l'ai pas compris...
en tout cas, dans ton cas, EpoK, le setContentPane est en effet discutable parce que la parite de UI qui reste en place est quand meme importante

Reply

Marsh Posté le 10-08-2005 à 09:21:47    

nraynaud a écrit :

tu fabriques un objet qui rendrait disponible à la fois un TreeSelectionModel et un SingleSelectionModel.
 

Code :
  1. public class MarketSelectionModel {
  2.   public SingleSelectionModel getSingleSelectionModel() {
  3.     <pouet>
  4.   }
  5.   public TreeSelectionModel getTreeSelectionModel() {
  6.     <pouet>
  7.   }
  8. }


 
ces 2 instances devront être synchro de telle manière que l'action sur un des modèles fasse bouger l'autre (et envoie les évènements correspondants à ses listeners).
 
Bien entendu, le code manquant dépend de tes structures de données internes.


 
 
héhé en fait tu anticipes sur mes futures problèmes ! Je pensais poster plus tard pour la synchro :) En fait là je me demande comment changer dynamiquement le JTabbedPane et deux Panel en fonction de la seletion du JTree, c'est a dire que chacun de mes objets du JTree ont comme attribut un JTabbedPane et deux JPanel, et quand on change la selection du JTree il faut afficher le JTabbedPane et les deux Panel correspondant à l'objet seletionné. Mon problème est en fait de faire ça le plus proprement et le plus efficacement possible.
 
voila j'espere être clair, je crois que beemer à compris mon problème !


Message édité par EpoK le 10-08-2005 à 09:22:23
Reply

Marsh Posté le 10-08-2005 à 09:21:47   

Reply

Marsh Posté le 10-08-2005 à 10:45:32    

non, les composants visuels ne doivent pas se connaître entre eux, c'est par des évènements issus des modèles que les informations circulent.


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 10-08-2005 à 12:30:16    

nraynaud a écrit :

non, les composants visuels ne doivent pas se connaître entre eux, c'est par des évènements issus des modèles que les informations circulent.


 
 
je ne comprend pas ta remarque  :??:

Reply

Marsh Posté le 11-08-2005 à 12:40:44    

up :??:

Reply

Marsh Posté le 11-08-2005 à 13:13:24    

je te parle de "chacun de mes objets du JTree ont comme attribut un JTabbedPane et deux JPanel" c'est une mauvaise pratique.


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 11-08-2005 à 14:10:34    

nraynaud a écrit :

je te parle de "chacun de mes objets du JTree ont comme attribut un JTabbedPane et deux JPanel" c'est une mauvaise pratique.


 
 
ok.
 
tu as une idée pour mon problème de switch de JTabbedPane et JPanel ?

Reply

Marsh Posté le 12-08-2005 à 18:34:39    

up

Reply

Marsh Posté le 12-08-2005 à 18:46:45    

disons qu'en fait je vois pas ton problème ...


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 12-08-2005 à 19:40:45    

nraynaud a écrit :

disons qu'en fait je vois pas ton problème ...


 
 
pour simplifier :
 
J'ai une zone de mon ihm (un jPanel) dans lequel il y a un jTabbedPane. Et j'aurais par la suite un deuxieme objet jTabbedPane, et je cherche à le mettre à la place de mon premier jTabbedPane, le tout proprement.

Reply

Marsh Posté le 13-08-2005 à 18:09:17    

:/

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed