Jump to content

Guenther

Members
  • Posts

    42
  • Joined

  • Last visited

Posts posted by Guenther

  1. QUOTE (mesmith @ Nov 29 2008, 06:19 PM)

    Yair,

    I think you're probably correct that as you open the front panel it will take focus but if you leave it open and then don't invoke the "Show Front Panel when Called" method I don't think it will take focus on subsequent calls. So once the sub VI is open the user can bring the main VI to the top and it will stay there. I can't try this right now and confirm this to be true (since I'm not at a computer with LabVIEW) but I think this is correct.

    Mark

    Yes, this works indeed. I disabled "Show Front Panel when Called" in the sub-VI and called the FP.Open property for the sub-VI during initialization of the main VI. As expected, the window of the sub-VI pops open immediately, but the sub-VI does not grab focus anymore when called.

    Thanks for the solution!

    Cheers,

    Guenther

  2. Hi guys,

    I'm working on an application where the main VI repeatatly (every few sec) calls a sub-VI, which is visible in order to display some information. This call is made in the consumer loop of a state machine. On the other hand, the user should be able to edit the content of a control (numeric within an array within a cluster) in the main VI. However, each time the sub-VI gets called, the control in the main VI immediately looses key focus, which makes it very cumbersome to edit its contents..

    Of course you can prevent the loss of key focus by making the main VI modal, but that also prevents any user interaction with any sub-VI, so I'd like to avoid this.

    In this thread Yair showed a way how to keep the key focus on a control using the "FocusObj" property, which is available in some key-related events. I haven't found this property outside these events.

    So, is the any way to prevent the loss of key focus without making the main VI modal?

    Thanks a lot,

    Guenther

  3. QUOTE (vugie @ Sep 2 2008, 12:42 PM)

    I didn't get such result in 8.2.1 (although I only reproduced simplified diagram)

    Are you sure that it is not a probe related issue? Try to index cluster through loops to generate 3d array and check the array.

    It is not probe related, the output array shows the same errors, even if I output a 3D array. That was the original design, when I first noticed this issue.

    Interesting that it works fine with LV8.2.

    Cheers,

    Guenther

  4. QUOTE (Ton @ Sep 2 2008, 11:17 AM)

    I assume that the fact you use unnamed cluster elements is a fact LabVIEW dislikes. It probably is some variant optimization bug.

    Ton (I get similar results)

    Hi Ton

    thanks for reproducing this bug. I was starting to worry about my copy of LV.

    The names don't make the difference. If I feed an unnamed cluster constant into the cluster input, the VI works. But that is just the reason for using this simple bundle function, that you don't have to use a cluster template. Looks more like a cluster initialization issue.

    Cheers,

    Guenther

  5. Hi guys,

    I just discovered a serious bug in the bundle function in LV 8.5.1. Looks like the output cluster doesn't match the input values.

    The VI should generate dummy data for testing the queued state machine in the main program. When the QSM started to act funny, I found that the generated data are wrong

    There are 3 nested loops, the output should contain a state for the QSM and the indices of the loops in a variant. The first 6 iterations of the inner loop are ok, but after that the value of the middle index is wrong in almost every other iteration. The boolean is just there to prevent constant folding, so I could actually watch what is going on in the loops.

    See the screenshot, where the bundle inputs are "1 1 0" while the cluster output reads "1 0 0". This is the first step that is wrong. After that, plenty more.

    Funny thing, if I wire the output cluster to the case structure or the loop frame, everthing works fine.

    Could someone try to reproduce this behavior to make sure it is not my copy of LV?

    In LV 8.6. I could not reproduce this bug, everything works as it should. Good reason to switch to LV 8.6.

    Cheers,

    Guenther

    post-3733-1220344739.png?width=400

    Download File:post-3733-1220344764.vi[

  6. Hi Tops,

    you can disable individual radio buttons. On the front panel select the radio button, right mouse click -> create property node -> disable. This property node works on this selected radio button only. Of course you'll need to have separate property nodes for each radio button.

    Have fun,

    Guenther

  7. QUOTE (Ton @ Jul 17 2008, 08:21 PM)

    Whoah, that was hard to find. But you disabled the string control...

    Yep, that was it. I wanted to prevent the cursor to be in the indicator field. Enabling the string indicator again makes the menu work.

    I do have a "mouse down" event that I use to select one of the items. To prevent the cursor from showing in the indicator I now redirected the key focus to a dummy control in this event. Is this the way to go or is there something more elegant?

    Thanks a lot! :worship:

    Cheers,

    Guenther

  8. Hi,

    I've got an array of clusters for which I configured a run time menu. Problem is, during program execution the run time menu is only shown if the right mouse click is done on the frame of the array or exactly between the elements, not if the mouse hovers over the array elements. I tried to configure a run-time menu for the array element or an element of the cluster but LV doesn't offer this option.

    How can I get the menu to appear regardless where on the array area the mouse click is done?

    Thanks in advance,

    Guenther

    EDIT:

    forgot to mention, this is LV 8.5.1

  9. Hi Osiris,

    for another project I coded a sub-VI that will give you the nearest data point for a given coordinate. So you make a mouseclick on the graph, close to the plot you're interested in, and the sub VI will give you X and Y value of the nearest data point plus the numer of the plot with this data point. This way you should be able to identify the strange graph. Sample is attached.

    Have fun,

    Guenther

    Download File:post-3733-1208445785.vi

    Download File:post-3733-1208445797.vi

  10. The key down event is the correct one, but instead of reading the table value you should capture the key itself and add up the consecutive keystrokes in a string indicator. In this string indicator you'll always have the current value of the table cell.

    To reset the value you can use the "value change" event, this means the user hit enter or clicked into another cell.

    I only have LV8.20, so a screenshot will have to do.

    Good luck

    Guenther

    http://forums.lavag.org/index.php?act=attach&type=post&id=5466

  11. Hu guys,

    is the run time engine of LV 8.2.1 different from the one if LV 8.20 or will programs compiled with LV 8.2.1 also run with the 8.20 RT engine?

    We have the LV8.20 RT engine already installed on quite a number of measurement PCs.

    Thanks,

    Guenther

  12. I don't know what you are doing wrong, but I have attached a VI that finds the callers window handle the ugly way :)

    Download File:post-5175-1170935219.vi

    -Mikkel

    Hmm, your VI does pass a non-zero refnum, but also no effect on the position of the file dialog window.

    I'm attaching my VI, replacing the App.ParWinforDlgs property node with Mikkel's VI doesn't change anything. Maybe the mistake is at some other place?

    Thanks

    Guenther

    Download File:post-3733-1170936325.vi

  13. Hi Rolf,

    only half a success. For some reason the property Application.ParentWindowForDialogs always returns zero.

    The effect on my program is that when running the VI the first time, the file dialog window ist on top, like it should. But running the VI the second time, the file dialog window is again buried underneath all LV windows.

    Any ideas what is wrong here?

    Thanks,

    Guenther

  14. Hi guys,

    I'm playing around with the .net file dialog, which I found in this thread. It works great, offers all the options I need for my project, BUT:

    the dialog window does not appear on top of all other windows. I have to minimize my ther LV windows to dig my way thru to it.

    I tried the show dialog method with the owner option and passed on the front panel and panes refnum (all typecasted), but no effect.

    Any ideas how to solve this problem?

    Thanks

    Guenther

  15. Maybe the dll is not registered on the target?

    Try running regsrv32.exe with the dll name as parameter

    Ton

    We do have an installation routine for the dll, and somewhere in the process a message pops up that the dll has been registered.

    I tried regsvr32 anyway and I got a message that the dll is loaded but the entry point could not be found. Don't know what to make of that.

    However, regsvr32 delivers identical messages on both PCs, so at least there's no difference here.

    Guenther

  16. Hi guys,

    I'm pretty much stuck with a problem. I have to call a .net dll from labview. So I do all this stuff with the constructor note, call the function with an invoke note and close the reference again. On my development machine it works like a charm, also when I compile my application the .exe works fine.

    However, when I transfer my application to another PC, I'm getting error 2 (memory full) immediately after calling the constructor node. Needless to say that it's not really a memory problem. The dll and my app are in the same paths on my development machine and the other PC.

    We asked the supplier of the dll for a little program the test the dll and that works fine on both PCs. So it has something to do with the way I call the dll in LV.

    Any ideas?

    Thanks a lot,

    Guenther

    post-3733-1166017439.png?width=400

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.