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

wxPython Discussion :

Création d'un menu sans sous-menu


Sujet :

wxPython

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 259
    Points : 195
    Points
    195
    Par défaut Création d'un menu sans sous-menu
    Bonjour tout le monde!
    Voilà, j'ai créé une barre de menu et je voudrais inclure dedans un menu tout simple, sans défilement... une étiquette quoi en somme.
    J'arrive bien à le créer, ça, y a pas de problème
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    menuBarre.Append(wx.Menu(),"titre")
    mais je ne sais pas comment faire pour créer un évènement pour ce menu? Etant donnée que je n'ai pas d'identifiant, je ne peux pas lier un évènement grâce à ça... Comment je dois m'y prendre?
    J'ai essayé de nommer mon menu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    menutitre = wx.Menu()
    menuBarre.Append(menutitre,"titre")
    self.Bind(wx.EVT_MENU,self.Action,menutitre)
    Mais mon application s'arrête et ne me génère pas de message d'erreur (qu'est que je détèste quand il me fait ce coup la!! ), du coup, je sais pas pourquoi ça plante.
    Quelqu'un a une idée?
    Merci beaucoup
    La vie n'est qu'une succession d'éternels recommencements

  2. #2
    Membre régulier
    Inscrit en
    Octobre 2006
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 92
    Points : 109
    Points
    109
    Par défaut
    Bonjour,

    Bien sûr, on n'a pas tout ton code mais...

    ...remplacer déjà "menutitre" par "self.menutitre" tu dois, jeune padawan !

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 259
    Points : 195
    Points
    195
    Par défaut
    Salut
    Citation Envoyé par Shadok Voir le message
    ...remplacer déjà "menutitre" par "self.menutitre" tu dois, jeune padawan !
    Pour quoi faire? Quel est l'intêret? Si je me sers de menutitre uniquement dans le __init__, je n'ai aucune raison de surcharger inutilement la variable... Si?
    La vie n'est qu'une succession d'éternels recommencements

  4. #4
    Membre régulier
    Inscrit en
    Octobre 2006
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 92
    Points : 109
    Points
    109
    Par défaut
    Bonjour,

    Euh... tu sais quoi ? Je crois que je devais être bourré quand j'ai envoyé mon message, en effet ... Bien sûr, j'ai dit n'importe quoi, on oublie.

    Cela dit, tu ne colles pas une id par défaut à tes items de menus ? Je déclare toujours id=-1 à mes widgets, j'ai parfois eu des problèmes en l'omettant.

    De plus, il y a un exemple dans le bouquin de Rappin & Dunn au point 10.2.2 dans lequel un item de menu n'est pas nommé mais identifié seulement par son id, et on peut quand même y lier un évènement, ça semble correspondre à ce que tu cherchais dans la première partie de ta question ?

    Enfin et surtout, j'ai un gros doute tout bête : es-tu sûr sur l'on peut lier un évènement directement au menu ? Tous les exemples que j'ai trouvé à l'époque où je me documentais sur les menus liaient des évènements à des items de menus, mais non au menu lui-même (je n'ai jamais vu ça dans aucun logiciel d'ailleurs).

    ... doute fortement accru par ce qui suit :
    - J'ai essayé de lier (sous windows) un évènement à un menu (=directement à un composant de la MenuBar) : plantage, mais moi, j'ai un message d'erreur (avec IDLE) ! 'Menu' object has no attribute 'GetId' ; CQFD ?
    - Sous Linux, créer des items pour chaque menu est impératif pour des raisons esthétiques : les menus qui n'ont pas d'items ne sont pas placés dans le même plan que les autres sur la barre d'outils, et ça se voit ; il y a de plus quand on clique sur un menu dépourvu d'items une sorte de petite barre blanche qui apparaît et qui semble dire 'y me manque kekchose...'

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 172
    Points : 163
    Points
    163
    Par défaut
    Euh une Toolbar ne serait-elle pas plus appropriée pour ce que tu souhaites faire ?

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 259
    Points : 195
    Points
    195
    Par défaut
    Salut
    Citation Envoyé par Shadok Voir le message
    Euh... tu sais quoi ? Je crois que je devais être bourré quand j'ai envoyé mon message, en effet ... Bien sûr, j'ai dit n'importe quoi, on oublie.
    Oublier? Oublier quoi? De quoi tu parles?
    Citation Envoyé par Shadok Voir le message
    Cela dit, tu ne colles pas une id par défaut à tes items de menus ? Je déclare toujours id=-1 à mes widgets, j'ai parfois eu des problèmes en l'omettant.
    Si, je donne effectivement une id à mes items, mais le truc, c'est que ce que je veux rajouter n'a pas d'item.
    Par exemple, je veux créer une barre de menu, dans laquelle on retrouve un menu "Fichier", avec un sous-menu lié ("Ouvrir", "Quitter"), un menu "Edition", avec un sous-menu lié ("Afficher", "Modifier", "Supprimer") et un menu "Rechercher", sans sous-menu, et quand on clique dessus, ça affiche un formulaire de recherche!
    Pour le moment, j'ai mis la possibilité de rechercher dans le sous-menu lié à "Edition", mais j'aimerais bien pouvoir l'inclure directement dans la barre de menu.
    Or, quand on crée un titre de la barre de menu, on ne donne pas d'identifiant, c'est bien pour ça que j'ai un problème pour pouvoir lier un évènement quand on clique dessus
    Il est fort possible que ça soit impossible comme tu le dis, mais j'ai un exemple de barre de menu où il y a au moins deux titres où l'on peut cliquer directement sans qu'un sous-menu défile : DevToolBar sous IE. Maintenant, j'ai aussi l'impression que ce sont des boutons qui ont été inclus à la place, mais ça, je sais pas encore comment faire (si on peut le faire en wxpython d'ailleurs)
    Fawn, j'ai aussi l'intention de créer une Toolbar après, mais pour moi, une Toolbar ne fait que reprendre les éléments importants du menu, pour les rendre plus accessible grâce aux icônes. Donc il faut quand même que je puisse mettre mon "Rechercher" dans la barre de menu.
    J'espère que j'ai été clair, parce que là, avec la tartine que je viens d'écrire...
    Merci pour vos réponses.
    La vie n'est qu'une succession d'éternels recommencements

  7. #7
    Membre régulier
    Inscrit en
    Octobre 2006
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 92
    Points : 109
    Points
    109
    Par défaut
    Sisi, t'en fais pas, t'as été clair !

    Plus j'y pense et plus je crois qu'on peut pas.

    J'ai dans un cas un peu similaire été amené à faire une "pseudo-barre" composée de boutons pour une frame actuellement en cours de réalisation.

    Ca donne ça pour le moment (sous XP) :



    En bidouillant on pourrait faire quelque chose de très proche d'une MenuBar, je pense.

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 259
    Points : 195
    Points
    195
    Par défaut
    Ouais, mais le problème, c'est que j'ai pas trop envie de bidouiller justement. Je me suis déjà pas mal pris la tête à recréer une combobox parce qu'elle agissait pas comme je voulais, je vais pas recommencer avec la menubar.
    Tant pis, je laisserai dans le menu Edition. A partir du moment où je fais aussi une toolbar et que j'ai des bons raccourcis clavier, je pense que ça devrait pas trop être gênant.
    Merci quand même pour ton aide.
    La vie n'est qu'une succession d'éternels recommencements

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

Discussions similaires

  1. Ajouter un menu et sous menu suite au menu popup Profile As
    Par kkt8 dans le forum Eclipse Platform
    Réponses: 7
    Dernier message: 12/04/2013, 14h57
  2. menu flash sans sous menu
    Par nita2006 dans le forum Flash
    Réponses: 12
    Dernier message: 11/04/2007, 15h06
  3. Menu, avec sous menu et sous sous menu
    Par flolane dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 15/12/2006, 08h57
  4. Aide: Menu et sous Menu
    Par ATTIA dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/03/2006, 13h33
  5. récupérer dans 1 menu le sous menu séléctionner
    Par vincedjs dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 02/03/2006, 13h53

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