05-14-2016 03:30 PM
CPrince --
I have posted the suggestion that all 8 Mouse Buttons be returned on the LabVIEW Idea Exchange, crediting you with raising the original question. Ideas are "rated" (and taken as something to be added to LabVIEW) if users go to the Idea Exchange and "Kudo" the Idea. As this is your idea, you might want to go here and Kudo this idea.
Bob Schor
05-16-2016 11:03 AM
@Bob_Schor wrote:I thought I'd asked if CPrince had tried the Query Input Devices VI that LabVIEW supplies for Mouse, Keyboard, and Joystick. He (or she) didn't directly answer, so I tried it, myself.
There are two relevant functions here -- Query Input Devices and Acquire Input Data. The first (on my system) returns Mouse information that clearly says that my Mouse has 8 buttons (I only see 5 -- left, middle, right, and two "thumb" buttons that I never use). The second, when wired for a Mouse, returns a type called Cluster Button Info, a Cluster of 4 Booleans.
Delving a little further, Acquire Input Data is a Polymorphic Function that can, in fact, return a Cluster of 32 Buttons (which it does for Joysticks). However, the Mouse "version" calls getMouseStateBothMode from the lvinput dll. This function returns an Array, but the LabVIEW "Mouse Acquire" function then goes ahead and shoehorns the Array into a 4-element Cluster.
So I did an experiment -- I said "Use an 8-element Cluster instead", just to see what happened. I was able to see four of the 5 Mouse Buttons respond, but not the fifth. It does seem like the LabVIEW lvinput dll is, indeed, only returning 4 of the 8 buttons the Query Input Devices says the Mouse supports.
Time for an Idea Exchange notice.
Bob Schor
My mouse has 9 buttons, I was able to see only three responding in LabVIEW. The "Query Input Devices" reports only 8.
I suggest you to assign keystrokes to these additional buttons. With that you can capture as an keyboard event. Another advantage is that you also can access it directly from the keyboard when a high button count mouse is not available.
By the way I do this to have <Ctrl> + C, <Ctrl> + X, <Ctrl> + V, <Ctrl> + H, <Ctrl> + E and <Ctrl> + <Shift> + T (that I assing as "Tools Palette" shortcuts in the extra buttons of my mouse.
05-16-2016 12:02 PM
Hi Bob,
I tried all that you mention (see my first post). Problem is that I need to release the system this week. I will probably put it up in the idea exchange but have to release without the extra mouse functionality. It is not a necessity but would be very convenient and more productive for the operators.
Thanks,
Chad
05-16-2016 01:07 PM - edited 05-16-2016 01:12 PM
I have setup my side mouse buttons (microsoft comfort mouse 4500), to generate key combinations (Ctrl+C, Ctrl+V) instead of default forward, back actions.
Pressing these mouse buttons generates keyboard events, in LabVIEW - first Ctrl, then C. Mouse event is not generated.
You can setup your mouse buttons to generate keyboard shortcuts. May be you can configure it at per-application basis to use simple shortcuts. Then monitor keyboard events and search for correct combination.
PS Did not try X-Mouse button control, but they say it can program a lot of different mice that are not supported by manufacturer's software.
http://www.howtogeek.com/howto/14400/use-those-extra-mouse-buttons-to-increase-efficiency/
PPS Did not read through all thread, Manzolli already offered it.
05-16-2016 01:12 PM
Thanks,
I will look into this. The mouse I have is programable.