activex et clavier
#1
Posté 19 janvier 2011 - 12:51
Sur un gros projet qui nécessite l'utilisation d'un activex, j'ai été confronté à un gros soucis de clavier. Si un activex est présent sur la scène, alors les fonctions the keydownscript et the keyupscript ne recoivent plus aucun évènement clavier à partir d'un exe ! Ca fonctionne très bien dans l'ide de director mais plus rien dès qu'on passe par un projecteur.
Ca ne vient pas de mon activex (création maison) mais bien de n'importe quel activex. Ca doit venir du système de gestion de Windows.
Donc si quelqu'un a des infos ou des pistes pour résoudre ce problème (l'une des solutions serait l'existence d'un xtra capable de lire/écrire correctement les bases de données access, ie multi-utilisateurs et réseau)
Pour info : tester sur XP/vista/7 en 32 et 64 bits avec director mx2004 et 11.5
#2
Posté 19 janvier 2011 - 01:41
J'utilise très souvent des activeX et je n'ai jamais rencontré de probleme d'utilisation du clavier...
#3
Posté 19 janvier 2011 - 02:21
#4
Posté 19 janvier 2011 - 02:44
peux-tu mettre un .dir en demo de ton activeX (sans tes codes...) pour tester?
#5
Posté 19 janvier 2011 - 04:11
Je vais avoir du mal à envoyer un ex, il faudrait avoir le même activex que moi. Mais c'est très simple à reproduire.
Dans un nouveau .dir, incorporer un activex quelconque et le mettre sur la timeline.
Ensuite un simple script d'animation :
on startmovie
the keydownscript="testclavier"
end
on testclavier
alert "OK"
end
Dans l'ide, chaque appui sur une touche fait apparaître l'alert.
Créer et lancer l'exe. Aucune alert
#6
Posté 20 janvier 2011 - 10:45
je ne l'avais jamais remarqué n'utilisant pas cette fonction (keydownscript).
Concernant un extra base de donnée access et autres, j'utilise "VbScriptXtra" ou "DataLinker" sans soucis depuis des années.
#7
Posté 21 janvier 2011 - 01:24
1) comme constaté en mode IDE Director cela fonctionne focus ou non sur l'activeX
2) en mode Projection ( EXE non shockwave ) le problème se produit si l'activeX n'a pas le focus ( keydownscript non interprété )
cela fonctionne si celui-ci a le focus, le msg d'alerte s'affiche
[EDIT] info un peu redondante mais bon...
Pour info voir fichier image pour explication
[attachment=1250:mb_keydownscript.jpg]
lorsque je clique sur la zone grise ( stage ), et j'appuie sur la barre d'espace par exemple, le msg Alert ne s'affiche pas
lorsque je clique désormais sur le zone blanche, qui représente mon ActiveX ( ici Quicktime Control 2.0 ), Keydonwscript est interprété en appuyant de nouveau sur la barre d'espace
#8
Posté 21 janvier 2011 - 01:53
là quelque soit la touche pressée, le msg apparait.
le souci est une fois encore la perte du focus de l'activeX, un clic sur le stage ou sur le bouton OK, le keydownscript n'est plus interprété
Edit :
A nouveau, ajouter _movie.keyboardFocusSprite=0 dans la fonction qui appelle l'alert
lorsque l'on clique sur le Bouton OK, on peut employer le clavier à volonté, que je clique sur la zone blanche de mon exemple ou le stage, Keydownscript est appelé.
voici le code du moviescript
the keydownscript="testclavier"
_movie.keyboardFocusSprite=0
end
on testclavier
_player.alert("OK")
_movie.keyboardFocusSprite=0
end
sur la timeline j'ai juste un behavior
go(_movie.frame)
end
oops !
un autre problème a lieu avec les zones d'édition éditables
il est fort possible qu'on ne puisse plus écrire dedans
Après tests effectivement c'est le cas
#9
Posté 22 janvier 2011 - 07:44
Je ne connaissais pas cette fonction keyboardfocussprite. Il faut bien penser à tout ce qui peut faire perdre le focus. Donc les fonctions alert, mais aussi celles qui affichent toutes sortes de fenêtres (sélection de fichier, ...). Et également le fait de cliquer en dehors puis en dedans du projecteur.
Pour les champs éditables, ce n'est pas très grave pour moi, vu que je les gère d'une manière très différente.
#10
Posté 18 janvier 2012 - 12:25
voilà presque un an de passé, tes utilisateurs sont-ils satisfaits de cette astuce ?
j'imagine que depuis le temps
Citation
#11
Posté 18 janvier 2012 - 04:35
En fait, ça ne marche pas du tout : au bout de quelques appels à keyboardFocusSprite, ça me plantait l'appli.
J'ai préféré me passer de l'xtra activeX pour utiliser activecompanionset, qui marche très bien.
Sinon, le forum semble refléter l'état de director en ce moment (quelqu'un a des news d'un éventuel director 12 ?)
Modifié par bubarnet, 18 janvier 2012 - 04:38 .
#12
Posté 19 janvier 2012 - 01:17
bubarnet, le 18 janvier 2012 - 04:35 , dit :
on raconte des choses
1 utilisateur(s) li(sen)t ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)









