PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Accéder depuis une fenetre a un element d'une autre fenetre
Accéder depuis une fenetre a un element d'une autre fenetre
Débuté par fabien, 16 déc. 2005 16:20 - 5 réponses
Posté le 16 décembre 2005 - 16:20
Bonjour.

Je suis debutant sous windev.

J'ai une fenetre ( Fenetre1 ) qui a un bouton.
Cette fenetre est la fenetre qui s'affiche par défaut.

J'ai une seconde Fenetre (Fenetre2) qui a un libellé.

Je voudrais en cliquant sur le bouton de Fenetre1 que le libellé de la fenetre2 change.

J'ai donc mis comme code du bouton :
Fenetre2.libellé = "toto"

Pas de pb de compilation, mais a l'exécution, j'ai une erreur me disant que le champ n'est pas connu.

J'ai le meme pb avec des etats, je ne peux pas faire :
Etat1.rubrique = "tutu".

Ma question est donc : comment faire pour accéder d'une fenetre à une élément extérieur ( une autre fenetre ou un état ).

Merci
Posté le 16 décembre 2005 - 11:07
Salut

tu peux, mais ta fenêtre Fenetre2 doit être ouverte, sinon aucun moyen.

Mathieu
Posté le 16 décembre 2005 - 16:47
salut,

oui ton probléme et du a une histroire de passage de paramétre,

si tu veux que ta fenetre souvre ave un titre différant il faut que sur ton bouton
tu face
sur clic du bouton
ouvre(fenetre2,"TOTO")
et que dans la fenetre2 dans initialisation
procedure recup(v_titre)
mafenetre..libelle = v_titre

voilou regarde a passage de paramétre.
Posté le 16 décembre 2005 - 17:09
Est-ce que ta fenêtre2 est ouverte ?
En effet, si tu cliques sur le bouton mais que la fenêtre2 n'est pas ouverte, le champ Fenêtre2.libellé est inconnu, idem pour l'état.

A+
Posté le 18 décembre 2005 - 10:03
autre solution
//clic sur bouton fenetre A
ouvre (fenetre B)
//initialisation de fenetre B
Si fenprecedente(fenetreA) alors
monlibelle.. fenetreB= "j'ai réussi")


autre solution
//Créer une valeur global au projet ( boléen)
monPassageFenetre est boléen

// clic sur bonton fenetreA
monPassageFenetre = vrai
Ouvre (fenetreB)

// sur code d'initialisation du libellé

Si monPassageFenetre = vrai alors
libellé = " je viens de la fenetre A"
sinon
libellé = "Je viens de ....
fin



Merci de me communiquer la solution employée
Posté le 18 décembre 2005 - 19:53
Bonjour,

2 solutions :

1 / avec la commande Titresuivant()

Titresuivant("Bienvenue dans la fenetre 2")
ouvre(fenetre2)

2 / Par le passage de paramètre comme a déjà été signalé

ouvre(fenetre2,"Bienvenue dans la fenetre 2")

et dans la fenêtre 2 :

procedure fen(xTitre)

si sansespace(xTitre)<>""
Titreencours(xTitre)
fin

Bon Dev.

Ali H : AliDev7@yahoo.fr