Code : Tout sélectionner
;- Window Constants
Enumeration
#Window_0
#Window_1
EndEnumeration
;- MenuBar Constants
Enumeration
#MenuBar_0
EndEnumeration
Enumeration
#MENU_3
#MENU_4
#MENU_5
#MENU_6
#MENU_7
#MENU_8
EndEnumeration
;- Gadget Constants
Enumeration
#Button_10
EndEnumeration
;- Gadget Constants1
Enumeration
#String_0
#String_1
#String_2
#String_3
#String_4
#String_5
#Butto_11
EndEnumeration
; la sa sera le nom de base des menus si le dossiers menu.men n'est pas present au demarrage
nouveau$ = "nouveau"
ouvrir$ = "ouvrir"
quitter$ = "quitter"
couper$ = "couper"
copier$ = "copier"
coller$ = "coller"
; la on tente d'ouvrir le dossier appeler menu.men. si il n'existe pas on passe a la suite
OpenPreferences("c:/menu.men")
nouveau$ = ReadPreferenceString("nouveau", nouveau$)
ouvrir$ = ReadPreferenceString("ouvrir", ouvrir$)
quitter$ = ReadPreferenceString("quitter", quitter$)
couper$ = ReadPreferenceString("couper", couper$)
copier$ = ReadPreferenceString("copier", copier$)
coller$ = ReadPreferenceString("coller", coller$)
; la on cree une procedure open_1(). qui ouvrira la fenetre 2 plus tard on ne s'attarde aps sur le sujet on passe a la ligne 101
Procedure open_1()
If OpenWindow(#Window_1, 366, 232, 250, 140, "options", #PB_Window_TitleBar | #PB_Window_ScreenCentered )
If CreateGadgetList(WindowID(#Window_1))
Resultat = StringGadget(#String_0, 10, 10, 100, 20, "nouveau")
Resultat1 = StringGadget(#String_1, 10, 40, 100, 20, "ouvrir")
Resultat2 = StringGadget(#String_2, 10, 70, 100, 20, "quitter")
Resultat3 = StringGadget(#String_3, 140, 10, 100, 20, "couper")
Resultat4 = StringGadget(#String_4, 140, 40, 100, 20, "copier")
Resultat5 = StringGadget(#String_5, 140, 70, 100, 20, "coller")
ButtonGadget(#Butto_11, 80, 110, 90, 20, "modifier")
EndIf
EndIf
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Gadget
Select EventGadget()
Case #Butto_11
; donc la on renvoie le texte precedament taper dans le fichier qu'on va cree juste apres
Texte$ = GetGadgetText(#String_0)
Texte1$ = GetGadgetText(#String_1)
Texte2$ = GetGadgetText(#String_2)
Texte3$ = GetGadgetText(#String_3)
Texte4$ = GetGadgetText(#String_4)
Texte5$ = GetGadgetText(#String_5)
;voila la on cree le fichier menu.men a la racine du disque dur
CreatePreferences("c:/menu.men")
; et la on reporte dans le fichier les textes taper dans les string ( les nouveau nom de menu )
WritePreferenceString("nouveau", Texte$)
WritePreferenceString("ouvrir", Texte1$)
WritePreferenceString("quitter", Texte2$)
WritePreferenceString("couper", Texte3$)
WritePreferenceString("copier", Texte4$)
WritePreferenceString("coller", Texte5$)
ClosePreferences()
MessageRequester("information", "attention pour appliquer les changement le programme doit fermer", 0)
End
EndSelect
EndIf
Until EventID = #PB_Event_CloseWindow
EndProcedure
; la le code commance vraiment on ouvre la fenetre principale avec les fameux menu
If OpenWindow(#Window_0, 0, 0, 600, 300, "menu rename", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
; on cree les menus
If CreateMenu(#MenuBar_0, WindowID(#Window_0))
MenuTitle("fichier")
MenuItem(#MENU_3, nouveau$)
MenuItem(#MENU_4, ouvrir$)
MenuItem(#MENU_5, quitter$)
MenuTitle("edition")
MenuItem(#MENU_6, couper$)
MenuItem(#MENU_7, copier$)
MenuItem(#MENU_8, coller$)
EndIf
ClosePreferences()
If CreateGadgetList(WindowID(#Window_0))
ButtonGadget(#Button_10, 10, 10, 110, 20, "renommer les menus")
EndIf
EndIf
; la on cree les evenements du boutton renommer les menus
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Gadget
Select EventGadget()
Case #Button_10
; et la on appel la fenetre no2 le fameux open_1() pour le reste faut remontee a la ligne 75
open_1()
EndSelect
EndIf
Until EventID = #PB_Event_CloseWindow
; voila apres on ferme la fenetre et c'est rebelotte au prochain demarrage ;)
; j'espert que sa va un peut t'aider