Api SendMessage

Api SendMessage - Delphi/Pascal - Programmation

Marsh Posté le 24-02-2004 à 13:29:15    

je voudrais simuler le bouton click dans  
une autre application de mon écran, mais  
je n'arrive pas :  
1°) a recuperer le handle du bouton sur lequel je veux cliquer  
2°) a simuler le click avec l'api sendmessage ?  
j'ai juste reussi a modifier le title avec  
l'api setwindowtext(hwnd,'titre....')  
si certains on deja ecrit du code ....  
ou savent ou je peut trouver des infos  
Merci!

Reply

Marsh Posté le 24-02-2004 à 13:29:15   

Reply

Marsh Posté le 24-02-2004 à 15:28:30    

1) Tu dois utiliser la fonction GetDlgItem, en lui passant en argumant le handle de la fenêtre mère et l'ID du bouton.
 
2) N'utilise pas SendMessage, mais PostMessage qui est asynchrone.
PostMessage prend en argument :
- le handle de la fenêtre mère
- le message à poster (WM_COMMAND dans ton cas)
- wParam, qui est divisé en 2 parties :
* les 16 bits de poids fort contiennent la commande à envoyer au bouton (BN_CLICKED ici)
* les 16 bits de poids faible contiennent l'ID du bouton qui recevra la commande
- lParam, qui est le handle du controle qui envoie le message (pas obligatoire, tu peux le laisser à NULL)


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 22-06-2005 à 20:35:58    

Harkonnen a écrit :

1) Tu dois utiliser la fonction GetDlgItem, en lui passant en argumant le handle de la fenêtre mère et l'ID du bouton.
 
2) N'utilise pas SendMessage, mais PostMessage qui est asynchrone.
PostMessage prend en argument :
- le handle de la fenêtre mère
- le message à poster (WM_COMMAND dans ton cas)
- wParam, qui est divisé en 2 parties :
* les 16 bits de poids fort contiennent la commande à envoyer au bouton (BN_CLICKED ici)
* les 16 bits de poids faible contiennent l'ID du bouton qui recevra la commande
- lParam, qui est le handle du controle qui envoie le message (pas obligatoire, tu peux le laisser à NULL)


 
Quel Serai la meilleur methode pour retrouver l'ID d'un bouton ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed