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

Interfaces Graphiques Discussion :

modification dynamique d'un menu


Sujet :

Interfaces Graphiques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 296
    Par défaut modification dynamique d'un menu
    Bonjour,
    Je voudrais savoir si il est possible de modifier un menu dynamiquement.
    J'ai crée un menu avec le GUIDE

    Choix
    - Supprimer
    - Choix 1

    et j'aimerai pouvoir modifier et rajouter des choix.
    Je voudrais aussi avoir la possibilité d'ajouter des cases à cocher dans le menu pour pouvoir voir quelles ont été les choix sélectionnés.
    Je ne cherche pas un menu contextuel qui apparait avec le clic droit mais le menu qui apparait dans la barre de menu en haut de la form.

    Merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Oui c'est possible. handles.Choix étant le menu parent, il suffit d'utiliser la fonction uimenu pour en rajouter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    uimenu(handles.Choix, ...
       'label', 'tonTitre', ...
       'callback', @tonCallback)
    delete pour en supprimer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    delete(handles.menuAsupprimer)
    ou set pour changer par exemple son titre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set(handles.menuAchanger, 'label', 'nouveauTitre')
    Pour les cases à cocher, utilise la propriété 'Checked'.

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 296
    Par défaut
    Ok ça marche j'ai fait ça pour créer des labels qui s'incrémentent
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    for k=1:4
        uimenu(handles.ChoixMenu,'label', sprintf('choix_%d',k), 'callback', @tonCallback)
    end
    Par contre je ne peux pas crée des callback à la volée dans mon code ,est-il possible d'utiliser un seul callback et de détecter quel menu je viens de cliker ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Oui c'est tout à fait possible, et récupérant son label par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function tonCallback(hObject, eventData)
     
    get(hObject, 'label')

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 296
    Par défaut
    ok ça me donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Choix = get(hObject, 'label')
    Choix = 'choix_3' par exemple comment j'extrais le 3 pour créer un pointeur

  6. #6
    Invité
    Invité(e)
    Par défaut
    Avec sscanf :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sscanf(Choix, 'choix_%d')

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/01/2011, 10h46
  2. modification dynamique
    Par creale10 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 09/02/2006, 09h29
  3. [PopupMenu] Créer dynamiquement un sous menu (submenu)
    Par MiJack dans le forum Composants VCL
    Réponses: 4
    Dernier message: 01/02/2006, 13h41
  4. Modification dynamique de la couche alpha
    Par Daedar dans le forum OpenGL
    Réponses: 6
    Dernier message: 22/10/2005, 14h22
  5. [JTree] Modification dynamique du texte à afficher
    Par jIdJo dans le forum Composants
    Réponses: 2
    Dernier message: 17/06/2005, 16h49

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