Accueil > Forum > > > > Detecter l'evenement d'un bouton appuyé dans une fenetre d'un logiciel
Detecter l'evenement d'un bouton appuyé dans une fenetre d'un logiciel
dimanche 20 mars 2005 à 12:04:41 |
Detecter l'evenement d'un bouton appuyé dans une fenetre d'un logiciel

danyo
|
Salut,
Comment puis-je détecter l'événement qu'un bouton d'une fenêtre d'un logiciel a été appuyé? Par exemple, dans Word, quand je veux sauvegarder mon document j'appuie sur 'SaveAs' et ca ouvre un SaveFileDialog avec les boutons 'Save' et 'Cancel'. Dans mon programme j'ouvre Word, je parcours les fenêtres pour obtenir le contenu du combo box/edit box. Ensuite, j'aimerais savoir sur quel bouton a appuyé l'utilisateur (Save ou Cancel)? Aussi, ou puis-je trouver la liste des API avec la description de leurs fonctionnalités?
Merci
|
|
dimanche 20 mars 2005 à 13:21:25 |
Re : Detecter l'evenement d'un bouton appuyé dans une fenetre d'un logiciel

DARKSIDIOUS
|
Un des moyens et de redéfinir les événements souris (avec la
fonction de l'API SetCapture), mais cela n'est pas forcément très
pratique à utiliser.
Il vaudrait mieux faire un hook système, mais là, comme le dirait brunews, il vaux mieux passer au C !
Pour la liste des API, va télécharger mon viewer d'api : plus de 500
fonctions documentés en français pour plusieurs langages. (voir le lien
de ma signature) DarK Sidious
Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
|
|
dimanche 20 mars 2005 à 14:13:57 |
Re : Detecter l'evenement d'un bouton appuyé dans une fenetre d'un logiciel

danyo
|
Salut DarK Sidious,
Merci pour ton API viewer, il est extraordinaire!!!
Je ne sais pas qu'est ce qu'un Hook System. Peux-tu m'indiquer ou est ce qu'on peut trouver une explication exhaustive avec un exemple, ou bien me l'expliquer en quelques lignes.
J'ai jeté un coup d'oeil sur la fonction SetCapture dans ton API viewer et je ne vois pas trop comment capter l'evenement du bouton appuyé.
Encore une fois merci.
|
|
dimanche 20 mars 2005 à 14:33:45 |
Re : Detecter l'evenement d'un bouton appuyé dans une fenetre d'un logiciel

DARKSIDIOUS
|
Un hook systeme consiste à intercepter tout les messages windows avant
qu'ils ne soient dispatché sur les fenêtres. Ce n'est pas facile à
gérer, et surtout, en VB, c'est du suicide (VB adore les hooks... lol)
Pour SetCapture, il suffit de lui spécifier le handle d'une fenêtre, et
alors tout les événements souris seront envoyés à cette fenêtre (par
exemple, un bouton). DarK Sidious
Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) :
|
|
dimanche 20 mars 2005 à 15:07:15 |
Re : Detecter l'evenement d'un bouton appuyé dans une fenetre d'un logiciel

BruNews
|
Comme dit par DARKSIDIOUS, un hook est une interception. Il peut être local à ton prog ou alors global au système.
Cas du hook system: il sera placé dans une chaine d'interceptions, le dernier créé est placé au début et a donc la main pour savoir s'il veut ou non retransmettre ce qu'il intercepte. Pour être créé avec réussite par Windows, le code du hook devra se trouver dans une dll afin que le système mappe une copie de cette dll dans chaque espace mémoire de tous les processus (en mode user, non kernel) actuellement chargés. Si l'initialisation du code DLL_PROCESS_ATTACH de DllMain aboutit, alors le hook est lancé. Le code du hook proprement dit doit se trouver dans une fonction exportée de la dll, c'est son adresse que l'on donne à SetWindowsHookEx. Tout ceci implique par force que cette dll soit en code natif (directement exécutable par le processeur) et exclut donc les langages interprétés de la prog system, il serait inconcevable de mapper des virtual machine dans chaque processus. En résumé et comme dit plus haut, il faudra passer par le C (ou ASM).
ciao... BruNews, MVP VC++
|
|
lundi 21 mars 2005 à 14:39:04 |
Re : Detecter l'evenement d'un bouton appuyé dans une fenetre d'un logiciel

danyo
|
merci pour tous ces informations!
A DarkSidious, Je n'ai toujours pas saisi ce qu'il faut faire avec SetCapture. Mon but est de savoir si l'utilisateur a appuyé sur Save ou sur Cancel
A BruNews, peux-tu m'orienter comment utiliser les hook pour atteindre mon objectif.
Merci
|
|
mardi 22 mars 2005 à 12:33:20 |
Re : Detecter l'evenement d'un bouton appuyé dans une fenetre d'un logiciel
|
Cette discussion est classée dans : bouton, logiciel, evenement, detecter, appuyé
Répondre à ce message
Sujets en rapport avec ce message
Rester appuyé sur un bouton [ par dracito ]
Bonjour a tous,pouvez vous me dire comment faire pour incrémenter une variable de 1 a chaque fois que l'on appuye sur un bouton de commande(pas compli
clic sur un bouton pour arreter un evenement? [ par lapolo13 ]
Salut à tous,Je suis en train de develloper une application qui permet d'ecouter des messages recu.Je lance la reception des messages à l'infini (whil
condition sur bouton option valide ou non [ par nanach ]
Bonjour ti souci tout bête (surement) mais que j'arrive pas à régler :s j'ai 3 bouton option ma procédure doit etre si bouton1 appuyé alors mac
appler l'evenement clik bouton [ par jakob06 ]
Bonjour,J'ai 2 boutons VB chacun sur une feuille excel , je veux appeler l'un (simuler l'evenement click ) dans le code de l'autre.cmt je dois faire
execute un prog tant que le bouton gauche de la souris est appuyé sur un bouton [ par bibinutz ]
salut tout le mondevoila le dilemne lol :je souhaiterais incrementer une valeur tant qu'un bouton reste appuyé a l'aide de la souris mais le prob c qu
Detecter un evenement sous IE [ par aKheNathOn ]
Bonjour,Je me perd un peu dans les termes BHO et ATL. Je veux juste créer un simple utilitaire permettant d'intercepter les événements d'une instance
l'evenement du bouton Entrer dans une datagrid [ par big wallace ]
salut tous le mondesi vous le permettez, je voudrai savoir comment ajouter une ligne dans une datagrid, et quand je presse sur le bouton entrer la lig
detecter un mouvement de la souris hors de la form [ par adnotlegland ]
Bon ben question récurrente on dirais mais je voulais juste m'en assurais :je souhaite detecter un evenement hors de la forme (en l'occurence un depla
help, bouton de raccorci [ par adibas ]
Salut Je réalise un petit programme en VB.net au cours des mes études qui consiste a faire une interface qui contient un bouton qui lance l'exécuti
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|