Page 1 sur 1
Barre de Menu
Publié : dim. 30/janv./2011 16:06
par Cagou77
Bonjour, j'aimerai savoir si une barre menu est affichée après l'utilisation de Hidemenu( #menu, 0 ) ou Hidemenu( #menu, 1 )
J'ai pas trouvé.
Merci d'avance
Re: Barre de Menu
Publié : dim. 30/janv./2011 16:29
par falsam
Hidemenu( #menu, 1 ) ou Hidemenu( #menu, #True) cache ton menu.
Re: Barre de Menu
Publié : dim. 30/janv./2011 16:48
par falsam
Un exemple ça peut servir
Code : Tout sélectionner
Enumeration
#Mainform
#Menu
#BtnHideYesNo
EndEnumeration
If OpenWindow(#MainForm, 0, 0, 400, 300, "Hide Menu")
If CreateMenu(#Menu, WindowID(#Mainform))
MenuTitle("Fichier")
MenuItem(1, "&Nouveau...")
MenuItem(2, "Enregistrer")
MenuItem(3, "Enregistrer sous...")
MenuItem(4, "&Quitter")
MenuTitle("Edition")
MenuItem(5, "Couper")
MenuItem(6, "Copier")
MenuItem(7, "Coller")
MenuTitle("?")
MenuItem(8, "A propos")
EndIf
ButtonGadget(#BtnHideYesNo,150,100,80,24,"Cacher")
Repeat
Select WaitWindowEvent()
Case #PB_Event_Menu
Select EventMenu()
Case 4 : Quit=1
EndSelect
Case #PB_Event_Gadget
If EventGadget()=#BtnHideYesNo
HideMenu(#Menu, #True)
EndIf
Case #PB_Event_CloseWindow
Quit = 1
EndSelect
Until Quit = 1
EndIf
End
Re: Barre de Menu
Publié : dim. 30/janv./2011 19:45
par Cagou77
Je me suis mal exprimé
je veux piloter un menu depuis un buttongadget
sur clic du button -> HideMenu( #Menu, 0 )
sur clic du button -> HideMenu( #Menu, 1 )
si le menu est effacé et que je clique sur le bouton
j'affiche le menu
si le menu est affiché et que je clique sur le bouton
j'efface le menu
et là je n'ai pas le moyen de savoir si le menu est affiché ou non
Re: Barre de Menu
Publié : dim. 30/janv./2011 21:31
par Ar-S
C'est presque pareil
Code : Tout sélectionner
Enumeration
#Mainform
#Menu
#BtnHideYesNo
EndEnumeration
;2 termes pour t'y retrouver dans le code, mais l'important c'est 1 & 0
Global invisible.l=1
Global visible.l=0
; HideMenu(#Menu, invisible) équivaut à HideMenu(#Menu, 1)
; HideMenu(#Menu, visible) équivaut à HideMenu(#Menu, 0)
If OpenWindow(#Mainform, 0, 0, 400, 300, "Hide Menu")
If CreateMenu(#Menu, WindowID(#Mainform))
MenuTitle("Fichier")
MenuItem(1, "&Nouveau...")
MenuItem(2, "Enregistrer")
etat=visible
EndIf
ButtonGadget(#BtnHideYesNo,150,100,80,24,"Cacher")
Repeat
Select WaitWindowEvent()
Case #PB_Event_Menu
Select EventMenu()
Case 4 : Quit=1
EndSelect
; Notre bouton vérifie et change l'etat
Case #PB_Event_Gadget
If EventGadget()=#BtnHideYesNo
Debug etat
If etat=visible
etat=invisible
txt.s="Montrer"
Else
etat=visible
txt.s="Cacher"
EndIf
; Puis il affiche le nouvel état
HideMenu(#Menu, etat)
SetGadgetText(#BtnHideYesNo,txt.s)
EndIf
Case #PB_Event_CloseWindow
Quit = 1
EndSelect
Until Quit = 1
EndIf
End
Re: Barre de Menu
Publié : lun. 31/janv./2011 6:50
par Cagou77
Merci pour l'aiguillage, voici le code final.
Code : Tout sélectionner
; ==================================================
; Code crée par : Grand Chris & un petit peu GeBonet
; Le : 30/01/2011 a 15:33:27
; ==================================================
Declare.l InversEtat( Opt.l )
Enumeration
#Win_0
EndEnumeration
Enumeration
#MenuBar_Form1_titre_FICHIER
#MenuBar_Form1_Nouveau
#MenuBar_Form1_Ouvrir
#MenuBar_Form1_Sauver
#MenuBar_Form1_Sortie
#MenuBar_Form1_titreEDIT
#MenuBar_Form1_Copier
#MenuBar_Form1_Coller
#MenuBar_Form1_Effacer
#MenuBar_Form1_Chercher
#MenuBar_Form1_titreAIDES
#MenuBar_Form1_Aides
#MenuBar_Form1_About
EndEnumeration
If OpenWindow(#Win_0, 80, 80, 500, 500, "Testhihi", #PB_Window_SystemMenu|#PB_Window_TitleBar|#PB_Window_BorderLess|#PB_Window_WindowCentered)
Button_Menu = ButtonGadget(#PB_Any, 450, 450, 40, 20, "Menu" );, #PB_Button_Toggle)
EndIf
; ---- Menus ---------
MenuBar_Form1=CreateMenu(#PB_Any,WindowID(#Win_0))
MenuTitle("Fichier")
MenuItem(#MenuBar_Form1_Nouveau,"Nouveau")
MenuItem(#MenuBar_Form1_Ouvrir,"Ouvrir")
MenuItem(#MenuBar_Form1_Sauver,"Sauver")
MenuBar()
MenuItem(#MenuBar_Form1_Sortie,"Sortie")
MenuTitle("Editer")
MenuItem(#MenuBar_Form1_Copier,"Copier")
MenuItem(#MenuBar_Form1_Coller,"Coller")
MenuItem(#MenuBar_Form1_Effacer,"Effacer")
MenuItem(#MenuBar_Form1_Chercher,"Chercher")
MenuTitle("Aides")
MenuItem(#MenuBar_Form1_Aides,"Aides")
MenuItem(#MenuBar_Form1_Coller,"A Propos")
; ---- Status barre -------------------
StatusBar_Form1=CreateStatusBar(#PB_Any,WindowID(#Win_0))
; ---- Boucle --------------------------
Etat = 1
HideMenu(MenuBar_Form1, Etat)
quitte=0
Repeat
EventID =WaitWindowEvent()
MenuID =EventMenu()
GadgetID =EventGadget()
WindowID =EventWindow()
EventTypeID =EventType()
Select EventID
Case #PB_Event_CloseWindow
If WindowID=Window_Form1
quitte=1
EndIf
Case #PB_Event_Menu
Select MenuID
Case #MenuBar_Form1_Nouveau
Case #MenuBar_Form1_Ouvrir
Case #MenuBar_Form1_Sauver
Case #MenuBar_Form1_Sortie
quitte=1
Case #MenuBar_Form1_Copier
Case #MenuBar_Form1_Coller
Case #MenuBar_Form1_Effacer
Case #MenuBar_Form1_Chercher
Case #MenuBar_Form1_Aides
Case #MenuBar_Form1_About
EndSelect
Case #PB_Event_Gadget
Select GadgetID
Case Button_Menu
Select EventTypeID
Case #PB_EventType_LeftClick
Etat = InversEtat( Etat)
HideMenu( MenuBar_Form1, Etat )
If Etat
ResizeGadget(Button_Menu, #PB_Ignore, 450, #PB_Ignore, #PB_Ignore)
Else
ResizeGadget(Button_Menu, #PB_Ignore, 430, #PB_Ignore, #PB_Ignore)
EndIf
EndSelect
EndSelect
EndSelect
Until quitte
End
;>>>>>>> =========== FIN ========== <<<<<<<
Procedure.l InversEtat( Opt.l )
If Opt
ProcedureReturn #False
Else
ProcedureReturn #True
EndIf
EndProcedure