olixelle
Messages postés506Date d'inscriptionvendredi 30 juillet 2004StatutMembreDernière intervention 3 mars 2008
-
25 sept. 2006 à 20:13
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 2021
-
26 sept. 2006 à 09:51
Bonjour,
je reviens à la charge avec mes hooks.
J'ai une appli qui récupere les messages d'un recepteur infrarouge.
Pour recupérer les msg, je lance la fonction d'initialisation en passant en parametre le handle de mon formulaire principal:
IR_Open(handle_fenetre_principale, 0, False, 0)
Ensuite, je fais un setwindowlong pour intercepter les messages:
SetWindowLong(h, GWL_WNDPROC, Me.myCallback)
Tout ca marche très bien.
Le pb, c'est que si j'ouvre une form en showdialog à partir de mon form princiapale, les messages sont mis à la queue jusqu'à ce que j'ai fermé ma fenetre modale.
Question:
n'y a t il que les form & les controls qui ont des handles ou est il possible que je passe en parametre non pas le handle de ma fenetre mais le handle d'un méthode ou classe ?
Voila :)
Mercid 'avance :)
PS: c'est pas la pein de me proposer de remplacer showdialog par show, ca ne correspond pas à mes besoins :)
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013129 25 sept. 2006 à 21:19
Le but des feuilles modales étant de bloquer les messages windows à la fenêtre parentes, forcément, les messages s'accumulent dans la file d'attente de la fenêtre en question.
Un Handle, c'est un identifiant permettant de distinguer les fenêtres (et donc les contrôles, puisque les contrôles sont des fenêtres) les unes des autres. Donc les classes et les méthodes n'ont pas de handle. Par contre, essaye de voir s'il n'est pas possible de rediriger les messages vers la fenêtre modale le temps qu'elle est affichée, puis rétablir l'interception des messages par la fenêtre parent dès qu'elle est fermée...