J’ai une variable “Boolean” (appelé Sandbox) que j’initialise dans l’événement “Opening” de mon app. Disons qu’elle passe à “True”, par exemple.
Var Sandbox As Boolean = True
Pour pouvoir l’utiliser partout dans mon app, je la déclare dans un “properties” nommé “Sandbox”, Boolean, Public, sans valeur par défaut. (c’est la bonne démarche ?)
Enfin, je la teste dans une méthode (msgbox(Sandbox.ToString)) et là elle est à False ! Alors que je ne l’ai mise nulle part à False.
Ou est-ce que ça pêche ?
Merci.
Déclarez la Property avec scope Global dans un ‘Module’. Attribuez la valeur par defaut ‘True’.
Faire habiter la Property dans un Module la rend accessible partout dans l’application.
Dans un évènement ‘Open’ de la fenêtre de démarrage vous pouvez afficher la valeur.
1 Like
Il te faut faire la difference entre une propriete et une variable
Dans ton cas, tu as cree une propriete et une variable
Je pense que le mieux serait que tu utilises une propriete de l’application
Ensuite tu vas pouvoir l utiliser comme suit:
app.Sandbox = true
var test as booleen = app.Sandbox
Je n aime pas ajouter des proprietes au niveau de l’app, j utilise les modules qui ont une portée generale
Heu, il n’y a pas une contradiction ici ?!? Il me semble que créer un module simplement pour avoir une propriété globale, c’est sortir la grosse artillerie .
je partage ton point de vue
Et vous les mettez où les Méthodes et Fonctions “globales” ?
Sans compter les extensions du langage ? (Extands)
Il n’y a rien de “grosses artillerie” dans un module. C’est simplement le support global de méthodes et de propriétés. Nul besoin d’en avoir plusieurs. Un suffit.
Je préfère le module, car j’emploie des méthodes réutilisables dans tous mes programmes. Cependant, si vous n’avez vraiment besoin que d’une seule propriété accessible de partout dans le programme, la suggestion de Jean Luc peut peut être suffire.
1 Like
Oui dans ce cas le module se justifie: on concentre tout ce qui est global à un endroit.
1 Like