PopupMenu

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
pasbel
Messages : 38
Inscription : mer. 10/avr./2019 17:36

PopupMenu

Message par pasbel »

Bonjour
Essayant d'utiliser un menu popup dans un tout début de projet, et cela ne fonctionnant pas correctement, j'ai fait quelques tests avec le fichier "PopupMenu.pb" des sources : il marche ! (ça aurait été dommage)

Si je retire les lignes ci-dessous de ce code, qui n'ont rien à voir avec le popup, le popup ne s'affiche plus.
Le PopupMenu peut-il fonctionner sur le fond de base de la fenêtre, ou faut-il qu'il y ait quelques chose, un gadget par exemple, sur le fond de base de la fenêtre pour que le popup pour qu'il puisse s'ouvrir ? (il semble que ce soit le cas car sir je clique-droit à l'extérieur du ListIconGadget, en restant sur la fenêtre, le popup ne s'ouvre pas)

ListIconGadget(0, 10, 10, 280, 240, "Tools", 200)
AddGadgetItem(0, -1, "Hammer")
AddGadgetItem(0, -1, "Screwdriver")
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: PopupMenu

Message par Ar-S »

Salut.
Tu peux virer tes lignes sans soucis, faut juste dire au popup de s'ouvrir au clic droit ailleurs que sur la listicon

Code : Tout sélectionner

If CreatePopupMenu(0)
  MenuItem(1, "Quitter")
  MenuBar()
 EndIf

If OpenWindow(0, 100, 100, 300, 260, "PureBasic - PopupMenu Example")
  Repeat
    Select WaitWindowEvent()   
        Case #PB_Event_RightClick
            DisplayPopupMenu(0, WindowID(0))
            
          
      Case #PB_Event_Menu
      
        Select EventMenu()  ; To see which menu has been selected

          Case 1 ; Cut
            Quit = 1

        EndSelect
        
      Case #PB_Event_CloseWindow
        Quit = 1

    EndSelect

  Until Quit = 1

EndIf

End
          
P.S : lorsque tu ecris du code sur le forum, mets le entre des balise code et /code et si tu veux du coloré tu le mets entre balise code-pb et /code-pb
(une balise se met entre crochet [mabalise] .... [/mabalise]
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
pasbel
Messages : 38
Inscription : mer. 10/avr./2019 17:36

Re: PopupMenu

Message par pasbel »

Merci pour ta réponse.
Faut que je pense aux balises...

Après t'avoir lu, c'est une évidence, j'ai du trop faire de tests autres aujourd'hui, je devais arrivé à saturation pour ce cas.
Du coup, mon problème dans mon propre code vient d'ailleurs car je vois le popup mais tout étroit, sans les textes, mais je vais vérifier demain si j'ai le temps, j'ai peut-être fait une bévue.

J'ai vu des codes où ils mettent le CreatePopupMenu après OpenWindow, une différence, car ça semble fonctionner dans les 2 cas ? (j'ai bien dit "semble"...)
pasbel
Messages : 38
Inscription : mer. 10/avr./2019 17:36

Re: PopupMenu

Message par pasbel »

J'ai jeté un oeil sur mon propre code à problème, le popup apparait en fait au bout de 2, des fois 3, clic-droit.
Il semble que mon code de menu de fenêtre en est la cause car si je supprime cette partie, ça marche sans problème.
Je jetterai un oeil demain.
Encore merci pour ton aide et ta réactivité ;-)
pasbel
Messages : 38
Inscription : mer. 10/avr./2019 17:36

Re: PopupMenu

Message par pasbel »

J'ai trouvé la cause de mon problème de base, le popup qui n'apparait pas correctement :
CreatePopupMenu et CreateMenu utilise la même indexation, il ne faut donc pas utiliser le même index à la création.

Merci pour ta réactivité.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: PopupMenu

Message par Ar-S »

Rien de tel que de trouver sois même la solution à son soucis :)
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Répondre