Nous allons placer maintenant quelques gadets Appelés aussi controles ou widgets dans d'autres langages.
Un gadget est un composant de l'interface graphique d'un programme : Textes, boutons, listes d'éléments, cases à cocher, boîtes à onglets, canvas, etc...
Lors de cet exercice, nous allons saisir un nom d'utilisateur et effectuer un control de validité quand on clique sur le bouton valider.
Code : Tout sélectionner
Enumeration Window
#MainForm
EndEnumeration
Enumeration Gadget
#User
#Ok
EndEnumeration
Declare Start()
Declare Valid()
Declare Exit()
Start()
Procedure Start()
;Mise en place de la fenêtre de l'application
OpenWindow(#MainForm, 0, 0, 500, 250, "Premiere feneêtre", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
;Quelques gadgets
TextGadget(#PB_Any, 10, 30, 100, 22, "Username")
StringGadget(#User, 110, 30, 270, 24, "")
ButtonGadget(#Ok, 400, 30, 80, 24, "Valider")
;Mettre le curseur dans la zone de saisie User
SetActiveGadget(#User)
;procédure à déclencher quand on clique sur le bouton Valider
BindGadgetEvent(#Ok, @Valid())
;Procédure à déclencher quand on quitte l'application
BindEvent(#PB_Event_CloseWindow, @Exit())
Repeat : WaitWindowEvent() : ForEver
EndProcedure
;Pour cet exercice on va controler qu'il y a au moins trois caractéres dans le nom de l'utilisateur
Procedure Valid()
Protected User.s = GetGadgetText(#User)
If Len(User) < 3
MessageRequester("Information", "Le nom de l'utilisateur doit comporter au moins 3 caractéres.")
SetActiveGadget(#User)
Else
MessageRequester("Information", "Le nom d'utilisateur " + User + " est correct.")
EndIf
EndProcedure
Procedure Exit()
End
EndProcedure