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.