les id des menus

Archive.
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

les id des menus

Message par nico »

J'ai un problème avec les menus, on ne peut pas récupérer l'identificateur du premier item pour un sous-menu, c'est vrai pour tous les sous-menus.

Code : Tout sélectionner

If OpenWindow(0, 100, 200, 300, 200, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget, "PureBasic Window")
  
  menu= CreateMenu(0, WindowID(0))
  If menu 
    MenuTitle("File")
    MenuItem( 11, "&Load...")
    MenuItem( 12, "Save")
    MenuItem( 13, "Save As...")
  endif
  
  Hdle_sous_Menu=GetSubMenu_(Menu,0)
  for a=0 to 2
    GetMenuItemInfo_(Hdle_sous_Menu,a , #MF_BYPOSITION, @lpmii.MENUITEMINFO) 
    lpmii\cbSize=SizeOf(MENUITEMINFO)
    #MIIM_SUBMENU=4: #MIIM_FTYPE=$10: #MIIM_STRING=$40: #MIIM_ID=2
    lpmii\fMask= #MIIM_SUBMENU | #MIIM_FTYPE | #MIIM_ID 
    debug lpmii\wID
  next a 
  
  Repeat 
    Select WaitWindowEvent() 
      Case #PB_EventMenu 
        Select EventMenuID() 
          Case 4 
            Quit = 1 
            
          Default 
            MessageRequester("Info", "MenuItem: "+Str(EventMenuID()), 0) 
        EndSelect
        
      Case #WM_CLOSE 
        Quit = 1 
    EndSelect 
  Until Quit = 1 
EndIf 
End
:twisted:
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Avec un menu créé avec les API, c'est exactement pareil. :roll:
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

En fait, c'est le premier appel de la fonction qui échoue, je ne sais pas pourquoi; donc au lieu de commencer par 0, on commence par -1.
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Si je sais pourquoi, c'est parce que je fais n'importe quoi!

Code : Tout sélectionner

  Hdle_sous_Menu=GetSubMenu_(Menu,0)
  for a=0 to 2
    lpmii.MENUITEMINFO
    lpmii\cbSize=SizeOf(MENUITEMINFO)
    #MIIM_SUBMENU=4: #MIIM_FTYPE=$10: #MIIM_STRING=$40: #MIIM_ID=2
    lpmii\fMask= #MIIM_ID 
    GetMenuItemInfo_(Hdle_sous_Menu, a , #MF_BYPOSITION, @lpmii.MENUITEMINFO) 
    debug lpmii\wID
  next a 
Si je fais mes déclarations avant, ça se passe mieux; je devrais peut être faire une grosse pause. :lol:
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Tu connais l'histoire du Purebasicien qui criait "Au bug !!!!!!" ? :lol:
fweil
Messages : 505
Inscription : dim. 16/mai/2004 17:50
Localisation : Bayonne (64)
Contact :

Message par fweil »

nico,

ptn, je l'ai cherché pendant une heure et j'ai laissé tomber !

Bon tu as trouvé alors tu es parmi les bons.
Mon avatar reproduit l'image de 4x1.8m présentée au 'Salon international du meuble de Paris' en janvier 2004, dans l'exposition 'Shades' réunisant 22 créateurs autour de Matt Sindall. L'original est un stratifié en 150 dpi.
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

gansta93 a écrit :Tu connais l'histoire du Purebasicien qui criait "Au bug !!!!!!" ? :lol:
tusors:

Dri :0:
fweil
Messages : 505
Inscription : dim. 16/mai/2004 17:50
Localisation : Bayonne (64)
Contact :

Message par fweil »

Je fête mon 30ème anniversaire du Samarchpô

Le haut bug ai pas connu. Enfin si deux fois dans ma vie j'ai du changer de PC !

Doit être ça le haut bug ...
Mon avatar reproduit l'image de 4x1.8m présentée au 'Salon international du meuble de Paris' en janvier 2004, dans l'exposition 'Shades' réunisant 22 créateurs autour de Matt Sindall. L'original est un stratifié en 150 dpi.
Répondre