probleme de focus [Perl/Tk] - Perl - Programmation
Marsh Posté le 05-03-2003 à 12:09:25
y aurait il sinon un moyen sous windows de connaitre/recuperer le handle du script en cours
je m'explique, la fonction qui ouvre cette put*** de fenetre dans l'autre soft prend en parametre le handle de l'application a laquelle elle doit etre attachée. si y a pas de parametre, elle souvre dans la fenetre de base.
Dans l'aide de mon soft, y a un exemple en VBA, ils utilise en parametre "CreatingNodeDlg.hWnd" . je voudrais faire la meme chose dans mon soft mais je sais pas comment faire
Marsh Posté le 05-03-2003 à 19:24:03
Pour la 1ere question regarde du coté de win32::GUI :
http://dada.perl.it/gui_docs/guico [...] ed_windows
Pour ta 2eme question:
hex($widget->id)
j'espere que ca va t'aider
Marsh Posté le 06-03-2003 à 09:32:57
pospos a écrit : Pour la 1ere question regarde du coté de win32::GUI : |
ok je vais voir de ce coté
pospos a écrit : Pour ta 2eme question: |
si j'ai bien compris, cette fonction va me retourner handle de $widget
en fait, il me faudrait le handle du script perl actuel
Marsh Posté le 06-03-2003 à 21:27:12
quesque tu entend par handle du script?
celui de la fenetre de commande dos? celui de ta fenetre tk?
Marsh Posté le 07-03-2003 à 13:29:16
pospos a écrit : quesque tu entend par handle du script? |
je pense que c'est celui du script qu'il lance la fenetre Tk
sinon j'ai contourné le probleme :
avec le package Win32::GuiTest, je recupere le handle de ma fenetre qui vient de s'ouvrir dans l'autre soft (avec FindWindowLike) et je la met au premier plan (avec SetForegroundWindow)
par contre, comment on fait pour qu'une fenetre Tk que l'on soit au premier plan
avec forceFocus, elle clignote dans la barre des tache mais n'est pas au premier plan
Marsh Posté le 08-03-2003 à 11:11:10
pour mettre une fenetre Tk au premier plan tu fais simplement:
$mw->focus;
et si tu veux son handle tu fais:
hex($mw->id); comme pour un widget
j'ai pas trop compris pk tu voulais le handle de ton script, mais si t'as coutourné le prob c bon?
Marsh Posté le 05-03-2003 à 12:03:03
salut les amis,
je fais un script en Perl/Tk sous Win2000, ce script est interfacé avec un soft du commerce via le package win32 :: OLE
a un moment, il faut que l'utilisateur selectionne une donnée dans une fenetre qui s'est ouverte dans le soft commercial
pour le moment, je demande a l'utilisateur de selectionner la fenetre du soft en question avec une petite message box
mais ca me plait pas beaucoup.
y aurait il moyen de donner le focus a cette fenetre depuis mon script en Tk? ou avec une fonction de windows(genre ALT+TAB)?
Message édité par circeedevalette le 05-03-2003 à 15:35:56
---------------
Tavernier! j'ai soif de la vie, qu'on m'en apporte