LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Unable to Update ny Data Acquistion GUI page when I place the cursor on Menu Bar

I'm currently writing a GUI based application software for Data acquistion. I'm using GetUserEvent() function in a loop, instaed of callback method. I have attached a menubar. I'm able to display my data in a Table control (Grid) and there is no problem. However my page updation stops when I move or play the cursor around the Menubar, eventhough i'm not selecting any Menu Item. So need help to get rid this problem..
0 Kudos
Message 1 of 5
(3,486 Views)
Which version of CVI are you using?
Because there is a known issue about menu bars related to CVI 6 and solved in version 7, as you can see in this post.


Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Message 2 of 5
(3,482 Views)
Thanks for the early response. I'm using CVI ver 6. So, I understand that it's a Bug with CVI 6 Ver. Any solution other than switching over to New Version.
Thanks a lot,
Anil.
0 Kudos
Message 3 of 5
(3,477 Views)
The simplest at all is to cut the menu bar and substitute it with a couple of buttons on the GUI.

Since on the menu bar you can use InstallMenuDimmerCallback to dim individual items when the menu is operated on, you will need either to dim the buttons or to insert the same conditions in the buttons callbacks to avoid undesirable callback executions.


Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Message 4 of 5
(3,471 Views)
Anil,

My recollection of this bug is that it caused the GetUserEvent function to not return if the mouse was hovering over the menubar, even though the function was called with the "no wait" parameter. If that is indeed what's happening to you, then you have a possible workaround:

Instead of relying on the "no wait" functionality of GetUserEvent, you can instead create a timer callback on your panel, and have it fire as fast as possible (pass 0 as the interval -- that will cause the timer to fire as often as you'd be able to call GetUserEvent in a loop). Inside the timer callback, you can then do your data acquisition. And you can keep calling GetUserEvent to catch the other events, if you prefer. But you would "wait" instead of "no wait."

Luis
NI
0 Kudos
Message 5 of 5
(3,453 Views)