Assignation d'une fenêtre à une variable
Bonjour,
J'ai toujours travaillé en VB6 et est commencé à travailler avec WinDev il y a peu de temps et jusqu'à maintenant je parviens à faire exactement ce que je veux. Il y a cependant une exception et espère que quelqu'un a la solution. En fait je souhaite qu'une fenêtre 'commune' puisse être utilisée par plusieurs fenêtre 'appelantes'(qui peuvent lancer la fenêtre commune). Il faut que la fenêtre 'commune' puisse aller voir/modifier n'importe quelle donnée/propriété de la fenêtre appelante
En VB6, je pouvais affecter une variable de référence à une fenêtre de la façon suivante;
Code:
1 2
| ' Dans les déclarations du module de base du programme
Public FenAppelante as form |
Dans la fenêtre qui va en appeler une autre (je vais l'appeler "Fen_A" pour les besoins de la discussion)
Code:
1 2 3 4 5
| Private Sub Form_Load()
set FenAppelante=me ' Fen_A
Private Sub Bouton_Click()
Fen_Commune.show |
Maintenant, dans la fenêtre commune, je peux obtenir n'importe quelle info en provenance de Fen_A
Code:
1 2
| A$=FenAppelante.Name
B$=FenAppelante.ComboTest.Text |
En tenant compte que je peux avoir trois différentes fenêtres qui font appel à la même fenêtre commune(mais pas en même temps)... est-il possible d'obtenir la même chose en WinDev et si oui, comment?
Merci à l'avance de votre indulgence et de votre aide
Une solution simple et qui fonctionne
Bonjour,
Tout d'abord, ce qui ne marche pas :
- définir une variable globale dans la fenêtre mère en espérant l'avoir intacte dans les fenêtres filles.
Tu peux par contre, si ces variables sont nombreuses, les déclarer dans un fichier mais c'est lourd.
La solution Ma_fenêtre.Ma_variable fonctionne.
Il existe une solution simple :
Si dans ta fenêtre mère tu écris :
Code:
1 2
| Global
dahut est une chaîne = "Je suis disponible partout" |
Tu obtiens la variable depuis n'importe quelle fenetre fille, sous le nom de Mère.Dahut
Si dans n'importe quelle fenêtre tu écris :
Code:
Mère.Dahut = "Merci"
alors tu as atteint ton but, la variable Mère.Dahut a été prise en compte dans sa nouvelle version, et est disponible de partout.
L'avantage en est que jamais la fenêtre mère ne sera accidentellement fermée, contrairement aux filles et aux soeurs.
La variable Mère.Dahut est authentiquement disponible de façon permanente.
Cordialement.