[Résolu] exe pour plusieurs fichiers.pb plusieurs fenetres
Publié : dim. 08/juil./2012 15:13
Bonjour,
Malgré mes différentes recherches, je n'ai pas trouvé de réponse à mes questions de "super débutant". (je ne sais pas si j'ai bien cherché)
Pour réaliser une petite appli de gestion de pièces, j'ai crée plusieurs fichiers .pb qui contiennent chacun 300 à 400 lignes avec bien entendu des procédures et des macros. J'aimerai garder ces différents fichiers et ne pas être obligé de rassembler tout dans le seul fichier Start.pb( entre 1 000 et 1 500 lignes c'est beaucoup je vais m'y perdre).
J'aimerai à partir d'un fichier nommé "Start.pb" ouvrir différentes fenetres sans utiliser les fenetres MDI.
Si j'essaie de faire par exemple IncludeFile "DB_Auto.pb" (je n'ai pas tout compris dans les Include ou Xinclude) après avoir mis dans mon premier fichier Start.pb toutes les Procedure OpenWindow_ concernant les différentes fenetres, les autres procédures de ces fichiers ne sont pas reconnues. J'ai donc des messages d'erreur : "impossible de créer une procédure dans une autre procédure".
Le nombre de lignes et de fichiers étant très important, je vous met un exemple récapitulatif que vous comprendrez j'espère.
Si quelqu'un peut m'aider en étant très clair car je suis tout débutant...
Merci d'avance.
Malgré mes différentes recherches, je n'ai pas trouvé de réponse à mes questions de "super débutant". (je ne sais pas si j'ai bien cherché)
Pour réaliser une petite appli de gestion de pièces, j'ai crée plusieurs fichiers .pb qui contiennent chacun 300 à 400 lignes avec bien entendu des procédures et des macros. J'aimerai garder ces différents fichiers et ne pas être obligé de rassembler tout dans le seul fichier Start.pb( entre 1 000 et 1 500 lignes c'est beaucoup je vais m'y perdre).
J'aimerai à partir d'un fichier nommé "Start.pb" ouvrir différentes fenetres sans utiliser les fenetres MDI.
Si j'essaie de faire par exemple IncludeFile "DB_Auto.pb" (je n'ai pas tout compris dans les Include ou Xinclude) après avoir mis dans mon premier fichier Start.pb toutes les Procedure OpenWindow_ concernant les différentes fenetres, les autres procédures de ces fichiers ne sont pas reconnues. J'ai donc des messages d'erreur : "impossible de créer une procédure dans une autre procédure".
Le nombre de lignes et de fichiers étant très important, je vous met un exemple récapitulatif que vous comprendrez j'espère.
Si quelqu'un peut m'aider en étant très clair car je suis tout débutant...
Merci d'avance.
Code : Tout sélectionner
;{- Enumerations / DataSections
;{ Windows
Enumeration
#Window_Start
EndEnumeration
;}
;{ Gadgets
Enumeration
#Button_Bd_Auto
#Button_Bd_Moto
#Button_Quitter
#Menu
EndEnumeration
;}
Define.l Evenement, EvenementWindow, EvenementGadget, EvenementType, EvenementMenu
;}
Procedure OpenWindow_Window_Start()
If OpenWindow(#Window_Start, 562, 29, 304, 210, "Bienvenue", #PB_Window_SystemMenu|#PB_Window_TitleBar|#PB_Window_ScreenCentered)
ButtonGadget(#Button_Bd_Auto, 20, 20, 200, 35, "Pièces auto")
ButtonGadget(#Button_Bd_Moto, 20, 65, 200, 35, "Pièces moto")
ButtonGadget(#Button_Quitter, 210, 140, 80, 35, "Quitter")
EndIf
EndProcedure
Procedure Menu()
If CreateMenu(#Menu, WindowID(#Window_Start))
MenuTitle("Base de données")
MenuItem( 1, "Supprimer un élément")
MenuItem( 2, "Ajouter un élément")
MenuBar()
MenuItem( 3, "Quitter")
EndIf
EndProcedure
OpenWindow_Window_Start()
Menu()
;{- Evenement loop
Repeat
Evenement = WaitWindowEvent()
EvenementGadget = EventGadget()
EvenementType = EventType()
EvenementMenu = EventMenu()
Select Evenement
Case #PB_Event_Gadget
If EvenementGadget = #Button_Bd_Auto
MessageRequester("Ouvrir :", "J'aimerai ouvrir une autre fenetre présente dans un autre fichier nommé : "+Chr(13) + "DB_Auto.pb ou .pbi")
ElseIf EvenementGadget = #Button_Bd_Moto
MessageRequester("Ouvrir :", "J'aimerai ouvrir une autre fenetre présente dans un autre fichier nommé : "+Chr(13) + "DB_Moto.pb ou .pbi")
ElseIf EvenementGadget = #Button_Quitter
CloseWindow(#Window_Start)
Break
EndIf
Case #PB_Event_Menu ; Un élément du menu a été sélectionné
Select EvenementMenu ; On récupère le numéro de cet élément...
Case 1 : MessageRequester("Ouvrir :", "J'aimerai ouvrir une autre fenetre présente dans un autre fichier nommé : "+Chr(13) + "DB_Delete.pb ou .pbi")
Case 2 : MessageRequester("Ouvrir :", "J'aimerai ouvrir une autre fenetre présente dans un autre fichier nommé : "+Chr(13) + "DB_Update.pb ou .pbi")
Case 3 : CloseWindow(#Window_Start): Break
EndSelect
Case #PB_Event_CloseWindow
EvenementWindow = EventWindow()
If EvenementWindow = #Window_Start
CloseWindow(#Window_Start)
Break
EndIf
EndSelect
ForEver
;
;}