|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : mars 2011 Messages : 3 ![]() |
Bonjour,
Je cherche à utiliser les boutons étendus de ma souris (déclenchant les "précédent/suivant" dans un navigateur internet). Après une recherche sur ce forum j'ai vu que je devais traiter le message windows J'ai donc créé une appli toute bête permettant de faire mes tests Code :
Code :
if Msg.wParam and MK_XBUTTON1 <>0 then Quelqu'un pourrait-il m'aider? Merci d'avance |
||
|
|
00
|
|
|
#2 | ||||||
|
Expert Confirmé Sénior
![]() Développeur C++\Delphi Inscription : juillet 2006 Messages : 9 195 ![]() |
Essaye ceci
Code :
Si oui essaye ceci Code :
Code :
__________________
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y ! Attention Troll Méchant ! ![]() "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer ! L'ignorance n'excuse pas la médiocrité ! L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde) Il faut avoir le courage de se tromper et d'apprendre de ses erreurs Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié ! |
||||||
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : mars 2011 Messages : 3 ![]() |
Merci pour ta réponse
La variable wParam change en fonction de la position du curseur sur la fiche mais pas en fonction du bouton de la souris. Cela m'a induit en erreur Du coup j'ai regardé quel composante du TMsg variait et j'ai testé ceci Code :
La variable à contrôler était donc Merci pour tes indications! |
||
|
|
00
|
|
|
#4 | ||||
|
Expert Confirmé Sénior
![]() Développeur C++\Delphi Inscription : juillet 2006 Messages : 9 195 ![]() |
wParam contient le masque du bouton
lParam contient la position de souris Tu as un décalage mémoire suite à une confusion de type TMsg c'est le type Windows, interne aux API TMessage c'est le type simplifié Delphi, pour la VCL change Code :
procedure TForm2.WMXButtonDown(var Msg: TMsg); Code :
procedure TForm2.WMXButtonDown(var Msg: TMessage); Code :
Code :
__________________
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y ! Attention Troll Méchant ! ![]() "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer ! L'ignorance n'excuse pas la médiocrité ! L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde) Il faut avoir le courage de se tromper et d'apprendre de ses erreurs Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié ! |
||||
|
|
20
|
|
|
#5 | ||
|
Invité de passage
![]() Inscription : mars 2011 Messages : 3 ![]() |
Merci pour la précision. J'ai remplacé TMsg par TMessage et cela fonctionne
Comment cela se passe-t-il lorsqu'on gère les évenement via un handler? Code :
est suffisamment propre? Dans ce cas la procédure MsgHandler ne peut contenir qu'une variable du type TMsg. Ce code semble fonctionner. |
||
|
|
00
|
|
|
#6 |
|
Expert Confirmé Sénior
![]() ![]() Paul TOTHFreelance Inscription : novembre 2002 Messages : 4 419 ![]() |
le message handler est utilisé quand on ne peut pas déterminer à l'avance le numéro de message, car il est paramétrable ou qu'il provient de RegisterWindowMessage; si on connait son numéro il est plus simple de passage par "message XXX"
__________________
Developpez.com: Mes articles, forum FlashPascal Entreprise: Execute SARL Produits : UPnP, RemoteOffice, FlashPascal Embarcadero : Ile de la Réunion, Dephi, C++Builder, RADPHP...TVA à 8,5% |
|
00
|
Copyright © 2000-2013 - www.developpez.com