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

SWT/JFace Java Discussion :

Ajouter un bouton à coté de l'onglet d'une vue


Sujet :

SWT/JFace Java

  1. #1
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut Ajouter un bouton à coté de l'onglet d'une vue
    Bonjour à tous,
    voilà mon soucis : j'aimerais ajouter des boutons à une vue particulière. Jusque là ça va j'ai réussi avec une ToolBar et des ToolItem, cela dit la ToolBar reste tjr au mm endroit...normal.
    J'aimerais savoir comment ajouter des boutons afin d'avoir le comportement par défaut dans Eclipse par exemple : quand le panel n'est pas assez large les boutons sont SOUS l'onglet, et quand il est large ils sont A COTE de l'onglet
    (voir copie écran)

    merci d'avance
    Images attachées Images attachées  
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  2. #2
    Membre expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Points : 3 919
    Points
    3 919
    Par défaut
    Salut jojodu31,

    Une question me vient à l'esprit : est-ce que tu crées ta ToolBar, ou est-ce que tu utilises celle de la View? Je pense que tu dois sûrement la créer puisque sinon, je vois pas pourquoi tu n'aurais pas un comportement "normal"...
    Dans ta méthode createPartControl() de la vue, il te suffit de récupérer une instance du IToolBarManager de la vue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    IActionBars actionBars = getViewSite().getActionBars();
    if (actionBars != null) {
        IToolBarManager manager = actionBars.getToolBarManager();
        if (manager != null) {
            manager.add(new MyAction("MyToolTip", IAction.AS_PUSH_BUTTON));
        }
    }
    Et donc, tu auras le comportement que tu souhaites...

    Voilà, a+
    Gueritarish
    Pas de questions technique par MP, les forums sont là pour ça.

  3. #3
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    salut Gueritarish,
    c'est tout à fait ça, j'avais crée ma propre ToolBar (débutant oblige ).. ça devrait donc résoudre mon pb...
    juste une petite question concernant "MyAction" qui doit étendre IAction je suppose:
    je déclarais un Item comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    addCheckItem  = new ToolItem(toolBar, SWT.PUSH);
    		addCheckItem.setImage(Activator.getDefault().getImageRegistry().get(Activator.ADD_CHECK_ICON));
    		addCheckItem.setToolTipText("Marquer le fichier comme 'à controler'");
    		addCheckItem.addSelectionListener(new SelectionAdapter(){
    			@Override
    			public void widgetSelected(SelectionEvent e) {}
    		});
    mais je ne trouve rien sur l'équivalent avec IAction je continu à chercher mais si tu as la réponse avant , je prend
    merci encore
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  4. #4
    Membre expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Points : 3 919
    Points
    3 919
    Par défaut
    Exactement, l'action que tu passes à la ToolBarManager doit implémenter IAction. Donc, dans cette IAction a une méthode run(), c'est dans cette méthode que tu placeras le code à exécuter quand l'utilisateur pressera l'Item dans la ToolBar. Sache que tu peux avoir plusieurs "type" d'Item :
    - Un bouton normal (push button),
    - Une liste déroulante,
    - Un bouton radio,
    - Un bouton check.

    Alors le ToolTip de l'IAction est passé à l'ajout dans le IToolBarManager, pour ce qui est de l'image, tu peux surcharger les méthodes getImageDescriptor(), getHoverImageDescriptor() ou getDisabledImageDescriptor() qui sont présente dans IAction.

    Voilà, j'espère avoir répondu à la question...
    Gueritarish

    [EDIT:] Pour mes IAction je préfère étendre Action qui se trouve dans le package : org.eclipse.jface.action.Action
    Pas de questions technique par MP, les forums sont là pour ça.

  5. #5
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    ok parfait merci
    Je poste le code si jamais ça intéresse quelqu'un un jour....

    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 AddToBDAction extends Action {
     
    	public AddToBDAction(String text, int buttonType) {
    		super(text, buttonType);
    	}
     
    	@Override
    	public void run() {
    		System.out.println("APPUI SUR XXX");
    	}
     
    	@Override
    	public ImageDescriptor getImageDescriptor() {
    		return Activator.getDefault().getImageRegistry().getDescriptor(Activator.ADD_BD_ICON);
    	}
     
    	@Override
    	public String getToolTipText() {
    		return "mon tooltip";
    	}
    }
    RESOLU !
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

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

Discussions similaires

  1. [XL-2010] Ruban Excel: ajouter un bouton dans un onglet existant
    Par Eelectron dans le forum Excel
    Réponses: 0
    Dernier message: 10/06/2015, 22h22
  2. [C#] Ajout de boutons à coté du bouton clavier
    Par jo_dalton dans le forum C#
    Réponses: 0
    Dernier message: 20/03/2009, 02h41
  3. Ajouter un bouton dans un onglet
    Par cocacola dans le forum GTK+ avec C & C++
    Réponses: 2
    Dernier message: 30/04/2007, 18h43
  4. [BCB 5.0] Ajouter un bouton dans internet explorer
    Par GthrDns dans le forum C++Builder
    Réponses: 2
    Dernier message: 01/02/2004, 22h54
  5. Ajout de bouton de commandes dans la barre de menus
    Par vanessaf22 dans le forum IHM
    Réponses: 9
    Dernier message: 21/07/2003, 11h38

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