⇨ MENU ⇨ BIBLIOTHEQUE ⇨ dlglib.bbc
PROC_checkdlgitem()
⇨ MENU ⇨ BIBLIOTHEQUE ⇨ dlglib.bbc
PROC_checkdlgitem()
DESCRIPTION.
La procédure PROC_checkdlgitem() modifie l'état d'une case à option ou d'une case à choix.
SYNTAXE.
PROC_checkdlgitem( boite , controle , etat )
REMARQUES.
boite doit être l'identifiant de la boite de dialogue qui accueille la case à cocher. Il s'agit du nom de la variable qui a reçu la valeur retournée par la fonction FN_newdialog() pour la création de boite.
controle doit être l'identifiant de la casse à option ou de la case à choix.
etat peut être :
- TRUE, pour cocher, sélectionner, controle ;
- FALSE, pour décocher, désélectionner, controle.
Note : les cases à option, ou cases à cocher, d'un même groupe sont toutes indépendantes les une des autres. Le changement d'état de l'une d"elles ne modifie pas l'état des autres cases à option, sauf programmation contraire. Tandis que dans un groupe de case à choix, ou boutons radio, un seul des controles peut être sélectionné. Sélectionner une case à choix désélectionnera automatiquement toutes les autres cases à choix du groupe.
IMPORTANT : Si le programme utilise la procédure PROC_checkdlgitem() pour sélectionner un des choix dans un groupe de cases à choix, il est indispensable de l'utiliser aussi pour décocher toutes les autres cases à choix de ce groupe. En effet, ne gère pas l'état global des cases à choix d'un groupe si l'une d'elles est cochée avec la procédure PROC_checkdlgitem().
Voir la fonction FN_newdialog() qui permet de déclarer et de créer une boite de dialogue.
Voir la procédure PROC_checkbox() qui permet de créer une case à option.
Voir la procédure PROC_radiobutton() qui permet de créer une case à option.
Voir la fonction FN_isdlgitemchecked() qui retourne l'état actuel d'une case à cocher.
La procédure PROC_checkdlgitem() est importée depuis le module dlglib.bbc.
EXEMPLE.
REM --- Importation des modules ---
REM --- Module de la bibliothèque BBC BASIC ---
INSTALL @lib$ + "dlglib.bbc"
REM --- Chargement de la police de caracteres par defaut ---
OSCLI "FONT """ + @lib$ + "DejaVuSans"",12"
REM --- Creation d'une boite de dialogue nommee DLG_Test de 160 x 60 unites intitulee Test ---
DLG_Test = FN_newdialog( "Test ..." , 160 , 80 )
PROC_registerdlgcallback( DLG_Test, FN_Choix() )
REM --- Creation des controles de la boite de dialogue ---
PROC_button( DLG_Test , "Fermer." , 8 , 35 , 55 , 40 , 15 , 0 )
PROC_button( DLG_Test , "Message." , FN_setproc( PROC_Action() ) , 85 , 55 , 40 , 15 , 0 )
PROC_checkbox( DLG_Test , "option A." , 101 , 10 , 10 , 40 , 10 , 0 )
PROC_checkbox( DLG_Test , "option B." , 102 , 10 , 25 , 40 , 10 , 0 )
PROC_checkbox( DLG_Test , "option C." , 103 , 10 , 40 , 40 , 10 , 0 )
PROC_radiobutton( DLG_Test , "choix 1." , 201 , 115 , 10 , 40 , 10 , 1 )
PROC_radiobutton( DLG_Test , "choix 2." , 202 , 115 , 25 , 40 , 10 , 0 )
PROC_radiobutton( DLG_Test , "choix 3." , 203 , 115 , 40 , 40 , 10 , 0 )
REM --- Affichage de la boite de dialogue et attende des choix de l'utilisateur ---
kcontrole = FN_showdialog( DLG_Test , &FFFFFFFF80000000 , &FFFFFFFF80000000 )
REM --- Fermeture de la boite de dialogue ---
PROC_closedialog( DLG_Test )
REM --- Fin du programme ---
PRINT : PRINT "Au revoir."
END
REM --- DEFINITION DES METHODES PERSONNALISEES ---
REM --- Fonction de rappel de la boite de dialogue DLG_Test ---
DEF FN_Choix( Qboite , Qtouche )
REM --- Choix aleatoire d'une case à cocher ---
CASE RND( 6 ) OF
WHEN 1 : kcontrole = 101
WHEN 2 : kcontrole = 102
WHEN 3 : kcontrole = 103
WHEN 4 : kcontrole = 201
WHEN 5 : kcontrole = 202
WHEN 6 : kcontrole = 203
OTHERWISE : = 0
ENDCASE
REM --- Gestion des cases à choix ---
IF kcontrole > 200 THEN
FOR kcase = 201 TO 203 : PROC_checkdlgitem( Qboite , kcase , FALSE ) : NEXT kcase
ketat = TRUE
ELSE
IF FN_isdlgitemchecked( DLG_Test , kcontrole ) THEN ketat = FALSE ELSE ketat = TRUE
ENDIF
REM --- Modification de l'état de la choix tiree au sort ---
PROC_checkdlgitem( Qboite , kcontrole , ketat )
PROC_refreshdialog( Qboite )
= 0
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de
Dans la RETROGICIEL vous trouvez des suggestions simples et classiques pour
TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER
avec un exemple de résolution à télécharger pour vous inspirer.