Changer image de Menu de POPUP MENU

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
Ar-S
Messages : 9477
Inscription : dim. 09/oct./2005 16:51
Contact :

Changer image de Menu de POPUP MENU

Message par Ar-S »

Salut

Je coince sur un truc sûrement tout con.
Je souhaite pouvoir changer l'image d'un menu de popupmenu..
On a bien SetMenuItemState pour l'état, du SetMenuItemText pour le texte mais j'ai rien trouvé pour l'image. SetGadgetItemImage ne marche pas pour le menupopup

Merci

Code : Tout sélectionner

If OpenWindow(0, 200, 200, 220, 120, "Exemple de menu contextuel")
  If CreateImage(0,16,16,32)     
    StartDrawing(ImageOutput(0)) ; carré rouge
    Box(0,0,15,15,RGB(255,0,0))
    StopDrawing()
    
    If CreateImage(1,16,16,32)     
      StartDrawing(ImageOutput(1)) ; Carré vert
      Box(0,0,15,15,RGB(0,255,0))
      StopDrawing()
      
    EndIf
    
    If CreatePopupImageMenu(0, #PB_Menu_ModernLook) ; Le moderne look est dégueulasse ^^
      MenuItem(1, "menu1",ImageID(0))               ; Rouge
      MenuItem(2, "quitter",ImageID(1))             ; Vert
      
    EndIf
    
    Repeat
      Event = WaitWindowEvent()
      Select Event                        ; Examine quel type d'évènement est survenu sur la fenêtre
        Case #PB_Event_RightClick,#PB_Event_LeftClick         
          DisplayPopupMenu(0,WindowID(0))                
          
        Case #PB_Event_Menu    
          Select EventMenu()    
            Case 1 : Debug "en cliquant sur ce menu ou un autre bouton quelconque, Je veux passer l'image du MenuItem(1) à ImageID(1) au lieu de ImageID(0)"
            Case 2 : End
          EndSelect
          
      EndSelect
    Until Event = #PB_Event_CloseWindow
  EndIf
EndIf
~~~~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
Avatar de l’utilisateur
GallyHC
Messages : 1703
Inscription : lun. 17/déc./2007 12:44

Re: Changer image de Menu de POPUP MENU

Message par GallyHC »

Bonjour,

La seule solution que j'avais trouver été de re-générer le menu, le plus simple étant donc dans faire une méthode.

Code : Tout sélectionner

If OpenWindow(0, 200, 200, 220, 120, "Exemple de menu contextuel")
  If CreateImage(0,16,16,32)     
    StartDrawing(ImageOutput(0)) ; carré rouge
    Box(0,0,15,15,RGB(255,0,0))
    StopDrawing()
   
    If CreateImage(1,16,16,32)     
      StartDrawing(ImageOutput(1)) ; Carré vert
      Box(0,0,15,15,RGB(0,255,0))
      StopDrawing()
     
    EndIf
   
    If CreatePopupImageMenu(0, #PB_Menu_ModernLook) ; Le moderne look est dégueulasse ^^
      MenuItem(1, "menu1",ImageID(0))               ; Rouge
      MenuItem(2, "quitter",ImageID(1))             ; Vert
    EndIf
   
    Repeat
      Event = WaitWindowEvent()
      Select Event                        ; Examine quel type d'évènement est survenu sur la fenêtre
        Case #PB_Event_RightClick,#PB_Event_LeftClick         
          DisplayPopupMenu(0,WindowID(0))               
         
        Case #PB_Event_Menu   
          Select EventMenu()   
            Case 1 :  Debug "en cliquant sur ce menu ou un autre bouton quelconque, Je veux passer l'image du MenuItem(1) à ImageID(1) au lieu de ImageID(0)"
                      If IsMenu(0)            ; < PAS FORCEMENT UTILE?
                        FreeMenu(0)           ; < PAS FORCEMENT UTILE?
                      EndIf
                      If CreatePopupImageMenu(0, #PB_Menu_ModernLook)
                        MenuItem(1, "menu1",ImageID(1)) 
                        MenuItem(2, "quitter",ImageID(1))
                      EndIf
            Case 2 : End
          EndSelect
         
      EndSelect
    Until Event = #PB_Event_CloseWindow
  EndIf
EndIf
Cordialement,
GallyHC
Configuration : Tower: Windows 10 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.72 (x86 et x64)
Avatar de l’utilisateur
Ar-S
Messages : 9477
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Changer image de Menu de POPUP MENU

Message par Ar-S »

Ouch..
J'avais envisagé cette approche mais je trouve ça tout de même bien lourd pour changer une seule image. (surtout que mon menu en contiendra plusieurs).
Voilà une idée de ToDolist que je vais poster sur le fofo US.
Un SetMenuItemImage(#Menu, Element, ImageID(image)) serait le bienvenue.
Merci en tout cas GallyHC
~~~~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