[ Script ] demande d'aide pour interface , syntaxe ? bug ?

  • Auteur de la discussion braabu
  • Date de début
B
braabu
Nouveau
24 Avr 2016
35
  • Auteur de la discussion
  • #1
bien le bonjour messieurs et mesdames !

je me lance dans la création d'une interface pour un script que j'ai fait, j'ai une 1ere version qui marche très bien, mais je voudrais l’améliorer.. et la c'est le drame ..

dans le code qui suit
je crée la fenetre, un bouton, et ce bouton doit , pour le moment me sélectionner un calque précis, le calque poche,
et bien si je met le code dans le main() ça marche sans problème , si je demande la même chose par un bouton ... paff ça ne marche plus ..

une idée du pourquoi ??

merci d'avance !!


 
petit_lulu
petit_lulu
Compagnon
11 Jan 2015
718
gers
salut,
je ne suis pas un grand specialiste de la programmation mais je pense que tu dois envoyer le "calque" dans ta routine "traitement" car le "calque" declarer dans la sub "ok_clicked" est simplement un string mais surement pas le "calque" de ta sub "main"
au pire declare ta variable "calque" en "public" dans un module ou autre mais pas dans le "main" afin de la rendre accessible et refais un test.
par contre enleve le "calque" de ton sub "traitement"
je ne suis pas certain d'etre bien clair ...:roll:

ta sub "traitement" doit avoir le "calque" declare par un "byval calque as layer" ou bien "byref calque as layer" et celui-ci doit correspondre a celui declare dans le "main".
j'ai pas tout suivi mais ce "layer" n'est pas le "sender" de la sub "ok_clicked"?

a+
 
dh42
dh42
Compagnon
4 Sept 2009
5 384
Près de St Etienne (42)
Salut,

Le fait que ton sub main() soit terminé quand tu clique sur le bouton fait que le script n'a plus de référence au document en cours.

Si tu ne l'utilise qu'une fois dans ta sub, tu peux donner le chemin complet comme suit.

si tu a besoin d'accéder plusieurs fois à des objets du documents tu peux créer un "pointeur" vers le document ; exemple, ici je lis le nom du calque actif, puis j'active le calque "Poche" et enfin je lis de nouveau le nom du calque actif.

newdoc deviens un pointeur vers le document en cours.

++
David
 
Dernière édition:
La dernière réponse à ce sujet date de plus de 6 mois
Haut