Page 2 sur 2

Re: Plusieur niveaux d'onglet

Publié : mer. 20/avr./2011 10:35
par pat
Bonjour,

A Guimauve :
Merci bien sûr pour LSI pour son code mais malgré tout un grand merci aussi à toi pour nous l'avoir fait connaître car sans toi je n'aurais pas su comment faire (et certainement d'autres personnes que moi).

Re: Plusieur niveaux d'onglet

Publié : mer. 20/avr./2011 11:34
par Guimauve
pat a écrit :Bonjour,

A Guimauve :
Merci bien sûr pour LSI pour son code mais malgré tout un grand merci aussi à toi pour nous l'avoir fait connaître car sans toi je n'aurais pas su comment faire (et certainement d'autres personnes que moi).
L'ennui avec ce code c'est qu'il ne fonctionne que sous Windoze et étant donné que que je ne suis plus sous Windoze depuis plus d'un an maintenant j'ai dû trouver une solution fonctionnelle sous tous les systèmes alors voici le prototype :

Code : Tout sélectionner

; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
; Nom du projet : Interface à bouton
; Nom du fichier : Button Interface.pb
; Version du fichier : 1.0.0
; Programmation : OK (Prototype)
; Programmé par : Guimauve
; Date : 20-04-2011
; Mise à jour : 20-04-2011
; Code PureBasic : 4.60
; Plateforme : Windows, Linux, MacOS X
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

Procedure ButtonGadgetGroup(FirstBtnID.l, P_x.w, P_y.w, P_Width.w, P_Height.w, P_VGap.w, P_HGap.w, P_LineMax.b, P_RowMax.b)
  
  P_xx.w = P_x
  
  For LineID = 1 To P_LineMax
    
    For RowID = 1 To P_RowMax
      
      ButtonGadget(FirstBtnID, P_x, P_y, P_Width, P_Height, "Button #" + Str(FirstBtnID))
      P_x + P_HGap + P_Width
      FirstBtnID + 1
      
    Next
    
    P_y + P_VGap + P_Height
    P_x = P_xx
    
  Next
  
  ProcedureReturn FirstBtnID
EndProcedure

If OpenWindow(0, 0, 0, 400, 300 , "ContainerGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)  
 
  ButtonGadgetGroup(1, 5, 5, 97, 25, 1, 1, 2, 4)
 
  For CtnID = 9 To 16
    
    ContainerGadget(CtnID, 5, 60, 390, 235, #PB_Container_Raised) 
      TextGadget(#PB_Any, 5,5,100,20, "Container #" + Str(CtnID-8))
    CloseGadgetList() 
    HideGadget(CtnID,1)
    
  Next
  
  HideGadget(9,0)
  
  Repeat
    
    EventID = WaitWindowEvent()
    
    Select EventID
        
      Case #PB_Event_Menu
        
        Select EventMenu()
            
        EndSelect
        
      Case #PB_Event_Gadget
        
        Select EventGadget()
            
          Case 1
            HideGadget(09,0)
            HideGadget(10,1)
            HideGadget(11,1)
            HideGadget(12,1)
            HideGadget(13,1)
            HideGadget(14,1)
            HideGadget(15,1)
            HideGadget(16,1)

          Case 2
            HideGadget(09,1)
            HideGadget(10,0)
            HideGadget(11,1)
            HideGadget(12,1)
            HideGadget(13,1)
            HideGadget(14,1)
            HideGadget(15,1)
            HideGadget(16,1)

          Case 3
            HideGadget(09,1)
            HideGadget(10,1)
            HideGadget(11,0)
            HideGadget(12,1)
            HideGadget(13,1)
            HideGadget(14,1)
            HideGadget(15,1)
            HideGadget(16,1)
  
          Case 4
            HideGadget(09,1)
            HideGadget(10,1)
            HideGadget(11,1)
            HideGadget(12,0)
            HideGadget(13,1)
            HideGadget(14,1)
            HideGadget(15,1)
            HideGadget(16,1)
 
          Case 5
            HideGadget(09,1)
            HideGadget(10,1)
            HideGadget(11,1)
            HideGadget(12,1)
            HideGadget(13,0)
            HideGadget(14,1)
            HideGadget(15,1)
            HideGadget(16,1)

          Case 6
            HideGadget(09,1)
            HideGadget(10,1)
            HideGadget(11,1)
            HideGadget(12,1)
            HideGadget(13,1)
            HideGadget(14,0)
            HideGadget(15,1)
            HideGadget(16,1)

          Case 7
            HideGadget(09,1)
            HideGadget(10,1)
            HideGadget(11,1)
            HideGadget(12,1)
            HideGadget(13,1)
            HideGadget(14,1)
            HideGadget(15,0)
            HideGadget(16,1)
  
          Case 8
            HideGadget(09,1)
            HideGadget(10,1)
            HideGadget(11,1)
            HideGadget(12,1)
            HideGadget(13,1)
            HideGadget(14,1)
            HideGadget(15,1)
            HideGadget(16,0)

            
        EndSelect
        
    EndSelect
    
  Until EventID = #PB_Event_CloseWindow
 
EndIf  

; <<<<<<<<<<<<<<<<<<<<<<<<<<
; <<<<< FIN DU FICHIER <<<<<
; <<<<<<<<<<<<<<<<<<<<<<<<<<
Bien sûr ce n'est qu'un prototype de code, il reste du travail à faire pour le rendre meilleur.

A+
Guimauve

Re: Plusieur niveaux d'onglet

Publié : mer. 20/avr./2011 12:03
par pat
A Guimauve :
Je n'ai pas testé ton code car comme je suis sous Windows ce que tu m'as donné (via LSI) me suffit mais il devrait peut être intéresser d'autres personnes qui n'ont pas Windows comme OS.
Merci pour tes contributions.