PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → Variables globales dans une fenetre interne
Variables globales dans une fenetre interne
Iniciado por pb4807, 15,mar. 2006 18:35 - 3 respuestas
Publicado el 15,marzo 2006 - 18:35
Bonjour,
J'ai déclaré des variables globales dans une fenetre interne et
bizarrement lorsque je demande leur valeur, elles sont toutes vides, en
mode debug j'ai un message "l'expression n'est pas évaluable"

Avez vous eu ce problème ?

--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Publicado el 16,marzo 2006 - 10:13
Bonjour,

Par principe, je n'utilise que rarement des variables globales, sauf pour des infos que j'utilise dans tout le programme (nom de l'utilisateur, métier, téléphone, etc..)
Personellement, je préfère utiliser des méthodes ACCESS / ASSIGN, même pour des fenêtres ( que je considere comme une classe )

Exemple, dans ta fenetre interne, tu crées une procedure
Get_nomdelavariable( mode, valeur="" )
valeurArenvoyer est une chaine
SI mode = "WRITE" ALORS
nomdelavariable = valeur
FIN
valeurArenvoyer = nomdelavariable
RENVOYER nomdelavariable

Dans la fenêtre précédante,
mavariable = ExécuteTraitement("Nomdelafenetre.Get_nomdelavariable", trtProcédure, "READ") // pour lire
ou
mavariable = ExécuteTraitement("Nomdelafenetre.Get_nomdelavariable", trtProcédure, "WRITE", la valeur) // pour écrire

C'est peut être un peu plus lourd que les variables globales, mais si tu travailles en MDI avec des alias de fenêtre, ou avec plusieurs développeurs, ou des composants, tu ne risques pas d'écraser ou de modifier une variable utilisé autre part.
Meme solution avec une classe qui peut être appelés dans différentes fenêtres, et par exemple, faire progresser la jauge de la fenêtre appelante (dans le cas d'un traitement lourd).

Cordialement,

C.AUBRY
Publicado el 16,marzo 2006 - 16:09
Perso, j'utilise des zones mémoires

procedure setvar(nomvar,valeur)

Function getvar(nomvar)

L'avantage est de disposer rapidement de n'importe quel type de variable et surtout de pouvoir utiliser ce type de fonctions dans des composants

si cela peux t'aider

A+
Publicado el 16,marzo 2006 - 16:23
merci pour votre aide

Georgy a présenté l'énoncé suivant :
Perso, j'utilise des zones mémoires

procedure setvar(nomvar,valeur)

Function getvar(nomvar)

L'avantage est de disposer rapidement de n'importe quel type de variable et
surtout de pouvoir utiliser ce type de fonctions dans des composants

si cela peux t'aider

A+


--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "