|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
Problème champclone champsupprime |
Débuté par walter_aline, 18 aoû. 2005 17:08 - 10 réponses |
| |
| | | |
|
| |
Posté le 18 août 2005 - 17:08 |
J’ai créé un super champ (appelé ‘Groupe’) contenant - un champ image (de fond) - un champ image (autre) - un ascenseur vertical - un ascenseur horizontal - un super champ (appelé ‘station’) contenant - 4 libellés
Je clone ce super champ ‘station’ pour en créé plusieurs (ST1, ST2, ...) qui sont dans le super champ ‘groupe’. Je supprime un des champs station avec la fonction champsupprime et ensuite je fais un champclone avec le même nom que la station précédente et il me dit qu’elle existe déjà. Pourtant le champ en question a disparu, j'ai essayer de la rendre visible (..visible=vrai), ça ne donne rien.
Bref, je n’arrive pas à supprimer mes clones de super champ qui appartiennent à un autre super champ
SI ChampExiste(ST1) ALORS
//on supprime l'ancien ChampSupprime(NomNTStation)
ChampClone(Groupe,ST1,Abscisse,Ordonnee)
FIN
Il plante en me disant que le champ ST1 existe déjà, ce qui est vrai car si je fait un champexiste juste après la suppression, ça me rend vrai.
La suppression n’a pas marché, je n'arrive pas à comprendre pourquoi. Merci Aline |
| |
| |
| | | |
|
| | |
| |
Posté le 18 août 2005 - 18:53 |
salut, tu clône le champ ou le groupe ? |
| |
| |
| | | |
|
| | |
| |
Posté le 19 août 2005 - 11:57 |
je clone le super champ 'station' qui se trouve dans le super champ 'groupe' (c'est vrai que mon explication n'est pas très clair)
le clone se trouve dans le groupe, en fait je n'arrive pas a supprimer un super champ (clone de 'station') qui se trouve dans un autre super champ ('groupe)
SI ChampExiste(ST1) ALORS
//on supprime l'ancien ChampSupprime(St1)
ChampClone(Groupe.station,ST1,Abscisse,Ordonnee)
FIN |
| |
| |
| | | |
|
| | |
| |
Posté le 19 août 2005 - 12:16 |
j'ai recréé l'erreur seule dans un projet Elle est reproductible Voici la suite de code que j'effectue Merci, c'est simpa de regarder PS: je peux t envoyer le code si ta une @mail à me donner
//ajoute un clone dans la fenetre principale
Ensemble_des_clones est un super champ dans une fenêtre ElementClonable est un super champ appartenant à Ensemble_des_clones
//je crée un clone qui s’appelle « Clone » ChampClone(Ensemble_des_clones.ElementClonable,"Clone",5,5)
//je le supprime ChampSupprime("Clone")
//je regarde si il existe Info("je vien de supprimer le clone"+RC+"il n'apparait plus dans la fenetre"+RC+" je fait un champ existe :ChampExiste(Clone)"+RC+" voila le resultat : "+ ChampExiste("Clone"))
//le champ existe me rend 1
//j’essaie de recloner avec le même nom ChampClone(Ensemble_des_clones.ElementClonable,"Clone",5,5)
//génère l’erreur
Erreur à la ligne 1 du traitement Clic sur Bouton3. Vous avez appelé la fonction ChampClone. <Clone> : Un champ avec ce nom existe déjà. |
| |
| |
| | | |
|
| | |
| |
Posté le 19 août 2005 - 13:14 |
Bonjour,
C'est normal ...
Il est dit
"Limites : Un champ supprimé ne peut pas être ré-utilisé par la suite comme source d'un clonage de champ (avec la fonction ChampClone )."
Amicalement |
| |
| |
| | | |
|
| | |
| |
Posté le 19 août 2005 - 13:52 |
si j'ai bien compris, tu as un super champ dans un autre super champ !! je veux bien ton projet .. envoies le moi à e-rod@libertysurf.fr
merci |
| |
| |
| | | |
|
| | |
| |
Posté le 19 août 2005 - 15:32 |
j'ai vu cette info, mais je supprime un clone du champ, pas le champ source lui même. C'est vraiment bizzare comme comportement, j'ai essayé plein de trucs, sans résultat correct.
Voila le code Sinon j'ai isolé le problème dans un projet, c'est reproductible, si tu peux me donner une @ mail, je te l'envoie. @+ Aline
//ajoute un clone dans la fenetre principale
Ensemble_des_clones est un super champ dans une fenêtre ElementClonable est un super champ appartenant à Ensemble_des_clones
//je crée un clone qui s’appelle « Clone » ChampClone(Ensemble_des_clones.ElementClonable,"Clone",5,5)
//je le supprime ChampSupprime("Clone")
//je regarde si il existe Info("je vien de supprimer le clone"+RC+"il n'apparait plus dans la fenetre"+RC+" je fait un champ existe :ChampExiste(Clone)"+RC+" voila le resultat : "+ ChampExiste("Clone"))
//le champ existe me rend 1
//j’essaie de recloner avec le même nom ChampClone(Ensemble_des_clones.ElementClonable,"Clone",5,5)
//génère l’erreur
Erreur à la ligne 1 du traitement Clic sur Bouton3. Vous avez appelé la fonction ChampClone. <Clone> : Un champ avec ce nom existe déjà. |
| |
| |
| | | |
|
| | |
| |
Posté le 19 août 2005 - 16:20 |
Bonjour,
Je ne sais pas si c'est bizzare mais en tout les cas c'est comme ca , que ce soit avec champsupprime ou l API , on ne peut pas recreer un champ avec le meme nom sauf a faire utilise() mais ca ne sert pas a grand chose vu que les autres champs clones vont disparaitres.
Pour ma part je fais comme cela
ChampClone (Origine,"Clone_"+DonneIdentifiant(),X,Y)
je ne creer donc jamais un champ clone avec le meme nom
Amicalement |
| |
| |
| | | |
|
| | |
| |
Posté le 19 août 2005 - 19:33 |
c'est quand même pas très pratique tout ça surtout que le champsupprime(nom1) suivi d'un champclone(nom1) (donc avec le meme nom) ça marche très bien si le super champ clonè n'appartient pas à un autre superchamp
Je garde ton idée sous le coude mais je ne trouve pas ça très propre (mon chef ne va pas aimer)
Merci pour tes conseils. @+ Aline |
| |
| |
| | | |
|
| | |
| |
Posté le 15 novembre 2005 - 10:43 |
Bonjour à tous,
J'ai moi aussi une erreur à ce sujet mais dans une fenêtre interne. Pour reproduire la chose j'ai simplement clôné un champ libellé dans une fenêtre interne vierge, je le supprime ensuite (il s'éfface à l'écran donc ok) mais le champexiste qui suit me le détecte comme existant. Et bien sûr si je reclône avec le même nom j'ai une erreur de champ existant.
A bientôt ! Ludovic |
| |
| |
| | | |
|
| | |
| |
Posté le 19 novembre 2005 - 08:41 |
Ludovic a écrit :
Bonjour à tous,
J'ai moi aussi une erreur à ce sujet mais dans une fenêtre interne. Pour reproduire la chose j'ai simplement clôné un champ libellé dans une fenêtre interne vierge, je le supprime ensuite (il s'éfface à l'écran donc ok) mais le champexiste qui suit me le détecte comme existant. Et bien sûr si je reclône avec le même nom j'ai une erreur de champ existant.
A bientôt ! Ludovic
Bonjour
Peut être hors sujet mais il est utile de savoir qu'un champ clonné appartient à la fenêtre du champ d'origine. De plus les nom des clones ne sont pas réutilisables.
[R&B] WDForge.org |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|