molette souris dans listbox (userform)

B

Ben

Guest
Salut à tous! Me revoilà!

Bon, je sais que le sujet a déjà été posé mais je n'ai pas trouvé de réponse qui me convenait...

Donc est-il possible d'utiliser la molette de la souris dans une listbox (scrollbar en vertical)? Et si oui, est-ce qu'il faut un code VBa ou simplement des options à modifier?

Merci à l'avance

@+, Ben
 
B

Ben

Guest
Bon je suis allé sur mvps.org et là j'ai trouvé un contrôle qui permet (apparemment...) d'utiliser la molette dans les userform dans lequel il est placé, seulement je n'ai tjs pas trouvé comment le faire fonctionner!! G bien le contrôle, je régle les propriétés, mais je n'arrive pas à savoir s'il faut intégrer un évènement dans le code ou quoi, et si oui, lequel?!!

J'essaye un peu tous les évènements proposés par l'aide du contrôle, mais...

En tout cas, je vous conseille le fichier d'install du contrôle, téléchargez le depuis www.mabry.com (/mwheel.exe).

Si vous trouvez comment faire...je veux bien le savoir!! (pareil pour si je trouve, je renverrais une réponse.

@+, Ben
 
J

jmj09

Guest
Bonjour
Il y a un moment que j'essaie de résoudre cette affaire sans réussir.
J'ai récupéré toutes les fonctions de l'API à utiliser pour intercepter le message que la souris renvoie sous Windows, et le traiter, mais rien à faire...
Je suis en train de me demander si ma souris HP envoie les messages standards ou si chaque souris envoie un message différent et là cà commence à dépasser mon niveau de compétence...
Côté internet, j'ai bien trouvé des listings (procédures fonction ) en VB mais rien en VBA...
Une idée ??? sur des ressources, un spécialiste de l'API en ligne, le traitement des messages de fenêtre...
Si quelques personnes veulent s'y attaquer je veux bien mettre ma doc à disposition...
Le contrôle précédent (BEN) de mabry.com n'est pas libre et la démo ne fonctionne pas chez moi, et allapi.net est sec sur le sujet et commence à devenir obsolète (plus mis à jour)...
Bref je sèche...

JMJ09
 
@

@+Thierry

Guest
Salut jmj09,

Tout ce que je peux dire c'est que sur un des PCs que j'utilise pour mes "expériences" un Pavilion HP, pratiquement d'origine, avec souris et clavier HP... Je ne suis jamais arrivé à faire fonctionner la molette dans les modules VBA.. (alors que bien sûr elle fesait défiler toutes les autres apllis).

Puis un jour, j'ai testé avec une souris MS de base premier prix et çà marche, je fais défiler tout les modules... J'ai jamais vraiment cherché pourquoi... Mais vu que tu parles de souris HP... cherche peut-être par là...

Bon Courage
@+Thierry
 
B

Ben

Guest
Re salut!!

G peur que certains n'aient mal compris mon problème!? Ce n'est pas dans les modules que je n'ai pas la molette, mais je voudrais qu'un utilisateur de mon programme puis faire défiler la liste de mon userform (listbox en vertical) avec sa molette.

Merci encore.
 
T

Ti

Guest
j'ai reçu les docs de jmj. Je peux déjà capturer les mouvements de la molette au niveau du Userform, mais pas encore à celui d'un objet du Userform. Ce n'est pas facile simplement et plusieurs solutions sont envisageables. Patience donc, je n'ai pas dit mon dernier mot, mais ça risque d'être long.

Et si quelqu'un me lit et a la réponse, voici ma question la plus crispante que je cherche à résoudre depuis des semaines :
Comment récupérer le hdc (= handle) d'un objet à l'intérieur d'un Userform. C'est possible avec un contrôle Access (on peut utiliser directement la propriété Picture.hdc par ex.) mais pas depuis Excel.
S'il y a un spécialiste Access par ici (moi je ne connais pas du tout Access) pourrait-il voir s'il est possible d'incorporer un Form Access dans un fichier Excel et dans ce cas, si on peut activer ce hdc pour un objet picture. Toute aide sera la bienvenue.
 
T

Ti

Guest
Voici donc une démo directement exploitable de la gestion de la molette souris, mais ATTENTION, ça reste très sensible aux plantages.
En attendant de trouver une DLL qui gère ça directement, ç'est un pis-aller
 

Pièces jointes

  • MoletteSouris.zip
    23.5 KB · Affichages: 940
  • MoletteSouris.zip
    23.5 KB · Affichages: 924
  • MoletteSouris.zip
    23.5 KB · Affichages: 967
T

Ti

Guest
Attention, ma démo fonctionne et devrait fonctionner un peu partout (je ne garantis rien pour les antiquités tout de même) mais durant la phase de développement de vos programmes, la moindre erreur dans le Userform vous éjectera d'Excel immédiatement. En fait le plus simple, c'est de développer le programme SANS la molette, puis, quand tout va bien (bétonnez vos gestions d'erreurs), ajoutez la molette.
 
V

Vériland

Guest
Salut Ti et le forum,

Ti !... j'ai essayé ton programme "moletteSouris"... moi ce que je ne comprend pas, c'est lorsque tu dis que c'est sensible au plantage... personnellement j'ai fait plusieurs essais : par exemple sans Private Sub UserForm_QueryClose... avec des copier/coller... et pour l'instant ça marche très bien... bon en même temps j'ai pas voulu tout perturber non plus... c'est du cousu main çà...

j'ai tout remis en place après... le plus simple quand même est de suivre les commentaires que t'as fait dans VBA... pour le coup, c'est encore un "p'Ti" plus...;-)

Bon aller Hop !... dans mon dossier spécial... et merci de nous proposer de telles applications...

Euh!!!... Thierry !.... faut mettre le lien 7741 dans les archives !!!... c'est aussi du bon post ça !!!

Bon là je vais quitter le forum jusqu'à lundi... En attendant bon courage à tous !

A+ Vériland
 

Discussions similaires

Statistiques des forums

Discussions
312 370
Messages
2 087 688
Membres
103 639
dernier inscrit
NIEMASAFI