Invité Invité
| Sujet: bug sur l'instruction OFF_CHANGE Mer 27 Juil 2011 - 21:51 | |
| L'instruction OFF_CHANGE sur un EDIT ne fonctionne pas. - Code:
-
dim a : label teste,prg edit 1 : on_change 1,teste : on_click 0,prg end prg: for a=1 to 150 text 1,a : off_change 1 : wait 100 next a return teste: message text$(1) : return J'ai également essayé avec la version du 7 mai, le résultat est le même. |
|
659_minifly
Nombre de messages : 590 Age : 76 Localisation : Valenciennes Nord Date d'inscription : 29/04/2010
| Sujet: Re: bug sur l'instruction OFF_CHANGE Mer 27 Juil 2011 - 22:05 | |
| Je ne comprend pas de toute façon la commande off_change. elle sert a quoi? <<Je viens de réessayer ton programme il fonctionne mais c'est trop furtif la boucle est trop rapide. J'ai modifié un peu ton programme et ça marche - Code:
-
dim a label teste,prg edit 1
on_click 0,prg on_change 1,teste end
prg: for a=1 to 15 text 1,a
wait 100 next a off_change 1 return
teste: message text$(1) wait 100 return
| |
|
Invité Invité
| Sujet: Re: bug sur l'instruction OFF_CHANGE Mer 27 Juil 2011 - 22:30 | |
| Contrairement à ce que tu crois, cette commande a une très grande importance.
Ça fait plusieurs jours que je me bats avec mon programme qui utilise le transfert de donnés entre 2 programmes. J'ai essayé au départ avec l'envoi et la réception par l'intermédiaire du clipboard. Celui-ci pose des problmes de temps en temps. Maintenant, j'utilise la dll de Klaus: IPC.dll qui permet de transmettre les informations au travers de 2 édits en dehors du champ de la forme, un dans chaque programme, et c'est grâce à l'instruction ON_CHANGE que l'on sait qu'une donnée est arrivée.
Ors je ne comprenais pas. Je recevais 4/5/ 10 fois la même donné (je ne sais pas si pour une raison ou une autre la dll envoie plusieurs fois cette donné. Toujours est-il, que celà n'allais pas.
J'ai enfin trouvé une solution. J'utilise un timer. Chaque fois que j'envoi une donné, je copie l'EDIT de réception avant d'enclencher le timer. Celui-ci contrôle régulièrement si le contenu de l'EDIT est différent de celui de la variable. Lorsque la réception est faite, j’arrête le timer et je traite l'évènement.
Un edit peut servir d'enclenchement d'évènement comme un timer. Mais si le traitement est important, il faut bloquer avec OFF_CHANGE, sinon il peut y avoir un problème. Je le constate aussi pour un memo, dont j'ai associé un scroll_bar, qui par le glissement de celui-ci me change de page. La aussi le scroll_bar utilise ON_CHANGE. |
|
659_minifly
Nombre de messages : 590 Age : 76 Localisation : Valenciennes Nord Date d'inscription : 29/04/2010
| Sujet: Re: bug sur l'instruction OFF_CHANGE Jeu 28 Juil 2011 - 0:42 | |
| J'essaye de comprendre.
En faite tu essaye de synchroniser les informations envoyer d'un programme a un autre ?
| |
|
Invité Invité
| Sujet: Re: bug sur l'instruction OFF_CHANGE Jeu 28 Juil 2011 - 8:04 | |
| L'exemple du programme, tu l'as mis quand?, je ne l'ai pas vu hier soir. Mais ton programme n'est pas une démonstration. Tu mets OFF_CHANGE après for/next. Si OFF_CHANGE fonctionnait, on devrait voir: le message 1, et c'est tout. Je vais reprendre: sans off_change - Code:
-
dim a : label teste,prg edit 1 : on_change 1,teste : on_click 0,prg end
prg: for a=1 to 5 text 1,a : wait 1000 :' off_change 1 next a return teste: message text$(1) return La il faut que je révise le fonctionnement de ON_CHANGE qui est différent dans son comportement que je croyais. Pour moi normalement, à chaque changement de l'edit, on devrait avoir un appel à "teste", et ce n'est pas le cas. Le changement est dans la boucle, donc normalement on devrait théoriquement avoir le message au fur et à mesure. Or on reçoit à la fin x fois le résultat final, et maintenant je change de titre: BUG SUR L'INSTRUCTION: ON_CHANGE Maintenant en retirant les commentaires, on n'a qu'un appel, donc cette instruction fonctionne, et je comprends mieux mes problèmes. Honte à moi, j'ai fait une mauvaise déduction. Je peux donc écarter un problème de dll, c'est l'instruction ON_CHANGE qui pose problème. |
|
Invité Invité
| Sujet: Re: bug sur l'instruction OFF_CHANGE Jeu 28 Juil 2011 - 17:58 | |
| Actuellement je maîtrise complètement le transfert de données entre deux programmes. Donc ce problème est derrière moi maintenant. En revanche, je reviens plusieurs fois sur le dernier exemple que j'ai mis, et je ne comprends pas le résultat. Faut-il considérer qu'il y a queux de file pour que l'évènement de l'EDIT soit traiter?. J'aurai bien aimer avoir l'avis de Jack sur ce sujet. Il doit surement avoir une autre vue sur le comportement de cette instruction. Je me fais vieux, je pense de trop. La différence avec l'insouciance d'un jeune. Évidemment je rigole |
|
Contenu sponsorisé
| Sujet: Re: bug sur l'instruction OFF_CHANGE | |
| |
|