Complement à l'aide sur MDIGadget()

Vous avez une idée pour améliorer ou modifier PureBasic ? N'hésitez pas à la proposer.
Dräc
Messages : 526
Inscription : dim. 29/août/2004 0:45

Complement à l'aide sur MDIGadget()

Message par Dräc »

Bonjour,

Je propose que l'aide sur l'instruction MDIGadget() soit complétée par un exemple n'utilisant pas #PB_MDI_AutoSize !

Cela permettra de mettre en évidence que l'on peut créer une zone d'afficher maitrisable, surtout si on ne peut pas utiliser un ContainerGadget(), SplitterGadget() ou PanelGadget().

Un bon exemple est celui proposé par CHRIS (voir aussi post
http://purebasic.hmt-forum.com/viewtopi ... 2470#12470)

Code : Tout sélectionner

Code: 
Enumeration 
  #MainWindow 
EndEnumeration 

Enumeration 
  #Mdi 
  #Bouton_1 
  #Bouton_2 
  #Saisie 
  #Editeur1 
  #Editeur2 
EndEnumeration 

Enumeration 
  #MenuPrincipal 
  #M_Open 
  #M_Save 
  #M_Quit 
  #M_Cut 
  #M_Copy 
  #M_Paste 
  #M_Max 
  #M_Min 
EndEnumeration 
  
If OpenWindow(#MainWindow,0,0,600,500,#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_MaximizeGadget,"Fenêtre MDI") 
  hMain = WindowID(#MainWindow) 
  
  ; Tu crée les menus 
  If CreateMenu(#MenuPrincipal, hMain) 
    MenuTitle("Fichiers") 
    MenuItem(#M_Open,"Ouvrir"+Chr(9)+"Ctrl+O") 
    MenuItem(#M_Save,"Sauver"+Chr(9)+"Ctrl+S") 
    MenuBar() 
    MenuItem(#M_Quit,"Quitter"+Chr(9)+"Ctrl+Q") 
    
    MenuTitle("Edition") 
    MenuItem(#M_Copy,"Copier"+Chr(9)+"Ctrl+C") 
    MenuItem(#M_Cut,"Couper"+Chr(9)+"Ctrl+X") 
    MenuItem(#M_Paste,"Coller"+Chr(9)+"Ctrl+V") 
    
    MenuTitle("Fenêtres") 
    MenuItem(#M_Max,"Maximiser") 
    MenuItem(#M_Min,"Minimiser") 
  EndIf 
  
  ; Puis la liste de gadgets 
  If CreateGadgetList(hMain) 
    MDIGadget(#Mdi, 0, 0, 450, 500, 2, 2) 
    
    ; La gadgetList concerne le MDI jusqu'à CloseGadgetList() 
    hMdi1 = AddGadgetItem(#Mdi, -1, "Fenêtre Fille 1") 
    hMdi2 = AddGadgetItem(#Mdi, -1, "Fenêtre Fille 2") 
    CloseGadgetList() 
    
    ; A partir de là, tu peux mettre les gadgets de la fenêtre principale 
    StringGadget(#Saisie,460,10,130,20,"") 
    ButtonGadget(#Bouton_1,460,40,130,25,"Bouton 1") 
    ButtonGadget(#Bouton_2,460,70,130,25,"Bouton 2") 
    
  EndIf 
  Repeat 
    Select WindowEvent() 
      Case #PB_Event_Gadget 
        Select EventGadgetID() 
          Case #Bouton_1 : Debug "Bouton 1" 
          Case #Bouton_2 : Debug "Bouton 2" 
            
        EndSelect 
        
      Case #PB_EventCloseWindow : Quit = #True 
    EndSelect 
  Until Quit 
EndIf