IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GWT et Vaadin Java Discussion :

Interaction entre plusieurs Widget


Sujet :

GWT et Vaadin Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 4
    Points : 5
    Points
    5
    Par défaut Interaction entre plusieurs Widget
    Bonjour,

    GWT: 2.0.3
    Eclipse 3.5
    pas de librairies graphique particulières
    Je rédige une application avec des widgets fabriqués à l'aide de uiBinder.

    Le problème: Depuis un MenuItem, qui est dans un widget, je veux créer un nouvel onglet dans un autre widget composé d'un tabLayoutPanel.

    exemple: Je clique sur le menu "Ajout utilisateur" un nouvel onglet s'affiche avec en titre "Ajout Utilisateur". Je re clique sur le menu "Ajout utilisateur" et un nouvel onglet......

    Je voudrais avoir le principe suivant:

    Dans la commande du menuItem:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    		Command addUser = new Command() {
    			public void execute() {
    				AddUserWidget AddUser = new AddUserWidget() ;
    // PROBLEME
    // ICI il faut que je récupère l'objet TabLayoutPanel qui est dans le widget centerPanel
                     //centerPanel.addTab("Noubel Utilisateur", AddUser) ;
    // l'objet centerPanel ci-dessus décrit plus bas
    			}
    		};
    		userAdd.setCommand(addUser) ;
    Tous mes widget sont ajoutés au RootPanel de la façon suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public class myapp implements EntryPoint
    {
    	public void onModuleLoad()
    	{
    		RootPanel rp = RootPanel.get("root");
                    rp.clear();
                   myRootPanel orp = new myRootPanel(rp) ;
    	}
    }
    Mon objet myRootPanel est définit comme suit:

    En gros cet objet me sert à ajouter tous les autres

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    public class myRootPanel extends FlowPanel
    {
    	... ...
    	private ActionPanelWidget actionPanel;
    	private CenterPanelWidget centerPanel;
     
    	public myRootPanel(RootPanel rp) {
    		... ...
    		actionPanel = new ActionPanelWidget() ;
    		centerPanel = new CenterPanelWidget() ;
     
    		// compose UI
    		contentPanel.add(leftPanel) ;
    		FlowPanel fp = new FlowPanel();
    		fp.add(actionPanel) ;
    		fp.add(centerPanel) ;
    		contentPanel.add(fp) ;
    		rp.add(topPanel);
    		rp.add(contentPanel) ;
    	}
    }
    Le widget actionPanel est en fait un flowPanel avec un MenuBar et des menuItem
    Le widget centerPanel est en fait un flowPanel avec un tabLayoutPanel

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    public class CenterPanelWidget extends Composite
    {
    	private static CenterPanelWidgetUiBinder uiBinder = 
    		GWT.create(CenterPanelWidgetUiBinder.class);
    	interface CenterPanelWidgetUiBinder extends
    			UiBinder<Widget, CenterPanelWidget>
    	{
    	}
     
    	@UiField TabLayoutPanel tab ;
     
    	public CenterPanelWidget()
    	{
    		initWidget(uiBinder.createAndBindUi(this));
    		InitWidget iw = new InitWidget() ;
    		tab.add(iw,"Présentation") ;
    	}
     
    	public void addTab(String title,Widget w) {
    		tab.add(w,title) ;
    	}
     
    	public void delTab(Widget w) {
    		tab.remove(w) ;
    	}
    Le widget AddUser est lui composé d'un flowPanel, de label etc

    Merci

  2. #2
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    L'utilisation d'un évènement personnalisé résous ce problème.

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Interaction entre plusieurs outils
    Par Djoul' dans le forum Débuter
    Réponses: 0
    Dernier message: 08/04/2013, 18h19
  2. Interaction entre plusieurs fenêtres
    Par Lenn0x dans le forum Windows Presentation Foundation
    Réponses: 7
    Dernier message: 17/11/2011, 11h42
  3. Interaction entre plusieurs JList
    Par Javabi3n dans le forum Composants
    Réponses: 2
    Dernier message: 07/04/2010, 20h47
  4. MDI interaction entre plusieurs vues
    Par parain3874 dans le forum MFC
    Réponses: 24
    Dernier message: 29/09/2008, 10h07
  5. interaction entre plusieur script python par le biai d'internet
    Par yggdrazil dans le forum Réseau/Web
    Réponses: 5
    Dernier message: 01/11/2006, 14h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo