Front panel state of VI in subpanel

Up until last week this code has been working flawlessly ... I have been dynamically loading VIs in and out of a subpanel.  While the VI is in the subpanel, the user has been interacting with it using custom events within that VI.  In the process of trying to create a simpler way of keeping track of the dynamically loaded VIs from the main VI, the whole process of interacting with the dynamically loaded VIs in the subpanel has stopped working.  The VIs load into the subpanel just fine, but their front panel state remains at "standard" instead of changing to "hidden".  what could be preventing this?  I've included a snippet from the main VI that shows how the VIs are dynamically loaded.
Attachments:
subpanel.png ‏75 KB

Hi.
Why do you open up your front panel first? remove that 
Make sure the VI is running in memory. Load you VI into the Sub panel. Front Panel Windowtate should show closed by default before loading into subpanel (atleast when I clone multiple VIT's in memory and show them in a subpanel) if not configured otherwise. After loading teh state should be standard.

Similar Messages

  • State of exe front panel

    Hello everyone,
    I am calling a LV Runtime executable by path using the System Exec VI. If the call to start this VI happens when teh executable is already running, I would like it to come to the front. How can I do this?
    I thought of the posisbility of setting a shared variable to alert the exe, or finding a way to detect/set the front panel state of the executable, which seems the best way. But I'm not sure how.
    Thoughts?

    I'm not exactly sure where got the syntax for this, but it does check for what you need and tells you so. (You'll have to change a couple of minor things if you're not running a mass spectrometer.)
    Cameron
    To err is human, but to really foul it up requires a computer.
    The optimist believes we are in the best of all possible worlds - the pessimist fears this is true.
    Profanity is the one language all programmers know best.
    An expert is someone who has made all the possible mistakes.
    To learn something about LabVIEW at no extra cost, work the online LabVIEW tutorial(s):
    LabVIEW Unit 1 - Getting Started
    Learn to Use LabVIEW with MyDAQ
    Attachments:
    Check_for_Second_Copy_Running.vi ‏23 KB

  • VI Front Panel in SubPanel reacts slowly

    In LabView 2010F2, I have a VI that has several buttons and other controls on the Front Panel. When I run that VI standalone, it runs very quickly, uses less than 20% CPU, and is very responsive. ALl of the controls react very quickly. But when I put that same VI FP in a subpanel in a small VI, all of the controls in the VI in the subpanel are now running very slowly. There buttons are slow to react. There is almost a 1/2 second delay on the buttons. The CPU is stall down around 25% usage. The hosting VI does not do much and should not be responsible for this delay.
    If the CPU is not very busy, what is the cause for the delay in the reaction of a Front Panel of a VI that is placed in a subpanel?
    What can be done to significantly improve the response of a FP that is placed in a subpanel?

    dbaechtel wrote:
    Ben wrote:
    How is you memory doing?
    Do you have "show Kernal time' selected?
    Ben
    CPU Usage and Kernel Time do not pudge much during Save All or Clean Up Diagram of large diagram.  CPU usage stays about 25%, Kernel time stays about 50-75% of Total CPU Usage.
    I don't see any reason why LV would show "not responding" under these conditions unless there are some long LV processes that are being executed that include significant I/O delays that do not relinquish the CPU to do other things while executing these long LV processes. If LV was not blocked by I/O (disk) delays then I should see near 100% CPU usage. If LV was being delayed by memory swapping, the I should see less than 50% memory free,
    I'll leave the discusion of Internals and Data Structure for another thread.  
    Spoiler (Highlight to read)
    Both of my copies of that book are much more worn.
    Both of my copies of that book are much more worn.
    It is going to take some work to narrow down the possiblitlites since you have presented this situation as an interaction problem.
    Generally speaking there is one hot button that comes to mind and that is the UI (User Inteface) thread where all GUI updates are handled as well as those things that do not play well if left to run in their own threads (property nodes for example).
    SO I would like to suggest you start by trimming it down to something that work good and then start adding stuff back until you can detect the performance hit. At tath point step back and look for contention issues.
    If I remebe correctly you can't post code images so asking you to post images of teh code that does not play nice together is a no-go.
    You could also run the performance monitor.
    THe Trace Execution tool kit should aslo help you get a the root of this situation.
    Trying to help, wondering if if I can,
    Ben
    PS Regarding the bug thread. I depend on that thread to stay on top of potential bugs. I asked and Laura moved the off-topic posts to the proper thread. Please excuse my "anal-retentive" side.
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Leaving the front panel displayed on a subpanel after stopping

    I have a tab control.
    Each tab control has a subpanel.
    Each subpanel has a static vi reference attached to it for launching.
    I would like the image of the front panel displayed in the subpanel after the program has finished running so that any information that was displayed is still present.
    Is there a way to retain all the settings between run's?
    -Regards
    eximo
    UofL Bioengineering M.S.
    Neuronetrix
    "I had rather be right than be president" -Henry Clay
    Attachments:
    NeuroNetriX TestSet.vi ‏12 KB

    When you say settings, do you mean controls? If so, you can right click on them and select Data Operations >> Make Current Value Default. That will keep the settings initialized how ever you set them up.
    I believe you can use use the Get Front Panel Image VI Method node, similar to the way to run the VI. You can create one by right clicking on the VI reference wire and selecting Method for VI Class >> Front Panel >> Get Image. 
    I've attached a code snippet of the node. If you want you can just drag the file into your block diagram and it should turn into code. 
    Applications Engineer
    National Instruments
    CLD Certified

  • Retain VI front panel in Subpanel after VI containing subpanel is stopped

    Is there a way to retain the front panel image of a VI in a subpanel after the VI containing the subpanel is stopped?  The default action causes the subpanel to clear when the VI containing the subpanel is stopped but not closed.
    Thanks in advance...
    Steve
    Solved!
    Go to Solution.

    If you want the image of the FP, you can place a picture control under the SP, use the Get Panel Image method and push the result into the picture control. When the VI will stop the SP will become transparent and you will see the picture control.
    I assume, though, what you actually want is for the FP itself to stay in the SP and I believe the answer is no. My experience has been that the caller removes the SP VI when it stops, whether you removed it or not, and a quick test indicates you can't insert a VI into an SP which isn't running. Personally, I never needed the SP to have a VI when the caller stopped. 
    One workaround you might be able to use is to place the SP in an XControl. Xcontrols run at edit time as well, so I'm guessing this will work, but I haven't tried it.
    Try to take over the world!

  • Pressing on the Table Control locks the front panel in a certain state

    Hello everyone!
    I have following problem. I have a very simple state machine with two cases. In the Idle case there is an event structure receiving input from a Table Control. When pressing Run the Vi enters the Run state. To exit the RUn state I have a Finish button, but IF I during the running state press anything on the Table Control the entire front panel will lock. Disabling the Table Control in the running state doesn´t help in the same way it helped for Button 1 and 2. Any help would be appreciated. I have tried unsuccesfully with the Registering and Unregistering event functions.
    Attached is a simplified version of the problem. Thanks in advance.
    Solved!
    Go to Solution.
    Attachments:
    Event lock problem.vi ‏22 KB

    Hi, RealBjörkis !
    I ran your VI and I saw a few problems, try to keep your controls outside the events structure, also do what said P@Anand previously.
    Here is your VI with some corrections. (Hope it fix the problem)
    Good Luck.
    Attachments:
    Event lock problem.vi ‏23 KB

  • Load subVI front panel in subpanel

    I want to load subvi front panel in subpanel. I have attached VI , however instead of path of VI I want to provide sub vi reference.Is it possible to this?
    Attachments:
    SetSubPaneOrigin_LV861.vi ‏10 KB

    Use a Static VI Reference that can be found on the Application Control pallette.
    After dropping it, right click and browse.
    Ben
    Discalimer: In an eralier version of LV, Static refs did not work correctly in an executable.
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • How adjust front panel placement of a sub VI in the subpanel

    Ok so I've learnt how to use tabs and how to place Sub VI's in the tabs. Last, I would like to change the position of the front panel of some of these sub VI's
    because they're not positioned to my liking  
    Whats the way to go?
    Thanks!
    Solved!
    Go to Solution.

    by default, a VI loaded into a subpanel will show up with the same FP position as when you last saved it.  That's not often what you want, and it's easy to move the FP around inside the window and forget you're changing it.  But this should be good enough to get going.
    one trick that I use is to load the subvi into the subpanel with the same origin in each.  So both the front panel and the pane that it is in have their own coordinates.  For the pane (which is normally the window boundary, and here is the subpanel boundary) the origin is 0,0 at the upper left corner.  On the front panel, look for a little dot with the grid visible.  That's (0,0) on the FP.
    So what we can do programmatically is to use property nodes to set the pane origin to the front panel origin:
     (LV2009f2)
     ok so the snippet ate my constant but there should be two 0's (I32) in that cluster.  Just create a constant on the Origin property and it'll make it.
    -B 
    -Barrett
    CLD

  • Is there anything like a front-panel OPEN or FP.STATE property for an RT (cRIO) VI?

    I'm wondering if there is a way for an RT VI to detect when its front-panel is open, both when run interactively from within a project and also when accessed remotely as an embedded window within a browser?
    Solved!
    Go to Solution.

    I know about the "Remote Panel:Connections to Clients" property and I'm already using that to tell whether a remote connection is active (as opposed to running the VI within the development environment). It cannot however tell if the front panel is open within the development environment.
    As for the property-node returning an error, that does not appear to work here (perhaps I have selected the wrong property, I'm using the get-reference-to-front-panel property). I suspect that since the VI is setup to work with a remote front panel, the VI thinks that a front panel does exist even when a remote connection does not. I suspect this error check would work if the VI had not been setup for use with a remote connection because then the front panel would be stripped out as the VI was built or perhaps deployed to the RT system.

  • Open sub VI front panel in a tab-- Possible?

    Well, the question is basically in the subject: Is it possible to call sub VI's and display their front panel in a tab. I do NOT wish to have the front panel in a new window when called.
    Solved!
    Go to Solution.

    _Faust wrote:
    Well, the question is basically in the subject:<...>
    The answer is also basically in the picture:
    You can find SubPanel element in the same palette as the Tab Control container. Place a SubPanel on the Tab Control and wire a reference of the VI whose front panel you want to display.
    Message Edited by Giedrius.S on 02-13-2010 11:08 PM
    While evaluating my code please have in mind that I am a LV novice. Therefore sometimes my code might violate some coding rules that I have to learn about myself. But how else could I do that...
    Chart zoom with "Mouse Over" effect

  • Front Panel Controller SubVI?

    Here is the scenario, I have a main VI that uses an event structure to call various other SubVI's depending on what control is pressed and to update the front panel accordingly.  The front panel of the Main VI is a Tab Control with ~25 controls total.  As you can imagine, some controls should not be enabled until other events happen.  For example, I have a menu ring called "Report Type" of which you can choose 'HTML' or 'Send to Printer.'  Next to this ring is a boolean control called "Open in Browser?" , I want to only enable this boolean control only when "Report Type" is set to 'HTML.'   Likewise I want both the "Report Type" and "Open in Browser?" controls to be disabled if the user has not hit the "Download Data" control to get data from the RT Controller (otherwise there would be nothing to report.) 
    These are just a few examples of what I need to do, I have been adding 'Disabled' property nodes throughout my event cases but it is becoming very unwieldy and making my block diagram quite cluttered and hard to understand.  What I want to do is have a 'Front Panel Controller SubVI' of sorts, of which I define about 10 or so various states the front panel can be in and pass that state to the controller SubVI which in turn disables/enables controlls accordingly.  This idea sounds good but so far the implementation seems pretty bad.  I was hoping I could just make a cluster of control references and pass that into the SubVI but LabVIEW 8.2 doesn't seem to allow me to wrap up references in a cluster.  This has forced me to use VI Server to get the references.   What I've been able to come up with using VI Server works, but I can't believe its the most elegant solution.  Basically, for each of the possible states, I iterate over all the controls in the front panel and have a case structure for their Label Text which determins if that control should be enabled/disabled for the given state passed in.  Also, for some reason it seems that it is not grabbing references to ALL of my controls.  There is a menu ring control on the front panel that isn't in the Controls[] array.  I should mention that this particular Control already has a reference node created for it that gets passed to a SubVI, perhaps this is why its not found in the Controls[] array, but this doesn't seem to be very intuititve, or documetned for that matter.
    <a href="http://tinypic.com" target="_blank"><img src="http://i37.tinypic.com/fjgwtv.gif" border="0" alt="Image and video hosting by TinyPic"></a>

    Thats a very good idea, although I'd probably want to put a case structure around the disable property node and have it only change value when the search array function does *not* return -1, otherwise I'll be disabling things I might want to maintain in an enabled state.
    Just before I read your post, another thought came to me and that why use a SubVI, I could just use a parallel loop with queues to send back state information.  Since queues can be blocking, this would not negate my event structure.  I could combine the idea you gave me with this architecture.  Thanks

  • Exporting front panel of subVI to calling VI

    Is there a way to "export" the front panel of a subVI so that it becomes part of the (or a pane of) the calling VI? If so, what is it called? I don't know the right language to search for examples of this concept.
    My problem is as follows:--
    I built a nice, classy interface to a test program that allows the user a great deal of flexibility in controlling the parameters of the device under test and in seeing the impact of those parameters on other parameters. This has about 8-12 control objects, some of which are also wired to act as indicators so that changing one can display on another and vice versa. This interface and its supporting program is big enough that it belongs in its own subVI rather than in the main program. In addition, I built another interface that charts signals from the device under test; this is also big enough that it belongs in its own subVI.
    I would like to have the front panels of both of these VIs be part of the front panel of the main program. That is, the front panel of the main program should "inherit" the front panel of each subVI wholesale. If I need to tweak the interface of one of the subVIs -- for example, to add, delete, or replace controls, indicators, displays, charts, etc. -- I would like to be able to do this without having to wrestle with the main VI and the connector pane between it and the subVI.
    It seems that LabView should be capable of this, but I cannot find any help, guidance, pointers, etc., in the documentation, textbooks, or examples.
    Could someone give me a clue?
    Thanks,
    Hugh Lauer

    So I tried to configure a subpanel, and found it very confusing. It seems that when you put a subpanel control on the front panel, you have to then set up a way to invoke the subVI. Since my subVI has some inputs and outputs on its connector pane, I created a VI reference for it and wired that to the type specifier node of the Open VI Reference node. I then inserted a Call VI by Reference node, so that I could wire up the inputs and outputs of my subVI. Finally, I wired this to the subpanel Invoke Method (Insert VI).
    This is different from the examples I found. In those cases, the subVIs had no inputs or outputs on their connector panes, but rather took all of their information from their front panels.
    I got different behavior on different attempts to run it. The most common (and most recent) behavior is that the subVI front panel opens up a few seconds after the main VI starts, but it is not quite "in" the subpanel. Instead, it is offset about an inch from both the top and left, as if it were a floating window that I cannot move. Also, it has annoying scroll bars on the bottom and right, which I don't want.
    Incidentally, I have two of these subVIs, and I have not yet tried to put the second one into a subpanel.
    What I would really like to do is
    have both subVIs populate their respective subpanels as soon as the main VI starts, but before any work gets done.
    after both subpanels are loaded, run the two subVIs in parallel, one to control the device under test and the other to capture its signals.
    have no scrollbars in the subpanel windows.
    In fact, what would be the best from a GUI point of view is for the two subpanels to be permanently part of the front panel of the main VI.
    Any guidance or insight would be most helpful.
    REgards,
    Hugh

  • How can I stop and restart a .vi with a single front panel button?

    Hey guys, a newbie here.
    I have a .vi with a stacked sequence. The first few frames are hardware initialization and settings (LIN master node) and the data the hardware should transmit (frame response table). In the next frame there's a loop in which the hardware sends and recieves data (LIN monitor). If I want to change the initialization, settings or data values, I have to stop the .vi and restart it. I was wondering if there is a simple way of doing this with a single click (a button on the front panel).
    An alternative would be to put another loop outiside the whole stacked sequence and then run it a single time with a push of a button (the inner loop should let the outer one restart), is that possible?
    I hope I made any sense. Thanks for any suggestions.
    Tomaz
    Solved!
    Go to Solution.

    Ideally, redoing the code with a state machine would be the best way to go, if only so that you can add this powerful tool to your toolbox. That being said, wrapping your existing code in a while loop, with its own stop button to stop the program, will work if executing the entire sequence is ok. Where you might run into problems with this is if there is a step in the sequence that shouldn't be executed again, then it would require wrapping that sequence frame's code in a case statement that executes only the first time through. If you have the time, learning how to use a state machine would be a real benefit, really taking your LabVIEW knowledge to the next step, if you pardon the pun.
    Putnam
    Certified LabVIEW Developer
    Senior Test Engineer
    Currently using LV 6.1-LabVIEW 2012, RT8.5
    LabVIEW Champion

  • Why doesn't LabView scale my objects properly in the front panel?

    In LabView 6.02 (Windows 2000) I have experienced problems when using the "Scale all objects on panel as the window resizes" option under VI properties. Try the following example: Go to the front panel and draw two arrows (from Decorations), one vertical and one horizontal (make sure they are perfectly straight). Now, resize the window, using the bottom right corner several times. You will soon find that the two arrows become increasingly missaligned and are not perpendicular to each other anymore. The problem gets worse the more you play around with the window size and they will never return to their original state. Installing the 6.02 patch did not seem to help at all.

    Dear Gustav,
    First of all, some objects do not scale whatsoever in LabVIEW. These include refnum controls and text.
    As far as the "scale all objects on the front panel as the window resizes" option goes, you have brought attention to an issue that I will announce to the R&D team. Currently, when you resize the screen, the objects on the front panel are resized at the same fraction of the original size, yet small rounding errors occur. As you move the window around, this small rounding error multiplies accordingly. Once you maximize the window, the small rounding error is translated into a large-scale degree change in the orientation of the (previously) perpendicular arrows.
    What action are you trying to perform that caused this issue? If possible,
    please post some screen shots of your front panel or give me explicit details as to your programmatic goal.
    One thing that you may try in order to prevent this misalignment and orientation shift is to highlight the arrows. Then, click the "Reorder" button on the toolbar and select [lock]. This will lock the objects and prevent them from resizing while the rest of the screen resizes (see attached image).
    Again, I'm sorry if the aforementioned phenomenon causes you any inconveniences, and I will be sure to announce this issue so that preventive changes are implemented in future LabVIEW revisions.
    I hope this helps. Please let me know if you need any further assistance. Have a great day!
    Kind Regards,
    Joe Des Rosier
    National Instruments
    Attachments:
    lock.JPG ‏33 KB

  • Why do I get "error code 3: Could not load front panel" when I run my executable​.

    I have a LV 8.5 VI that controls only an agilent spectum analyzer. The agilent VIs call DLLs rather than SCPI commands. I created an application and an installer to load on a non LV machine and ran setup which was successful. When I run the EXE I get "error code 3: Could not load front panel" for each of my agilent spectrum analyzer VIs. I have to click "OK" about ten times, once for each VI. (My executable runs fine on all machines that have labview 8.5) The front panel does load with a broken arrow. The errors listed when the arrow is clicked for all of the Agilent VIs state: Missing subVI AGE444xInitialize.VI (or close.VI or read.VI etc.)
    There is an AGE444x32.DLL in the data folder with the EXE file so I included as support both the DLL and all of the agilent drivers in the application build. Still no luck. I have built the application and installer about 6 times in various forms. I NEED AIR SUPPORT.
    Unfortunately I do not have access to the internet at my jobsite so bear with me.
    Rob

    Hi V-rob,
    I'm glad to hear the executable is working now that NI-VISA is installed.  Thanks for posting the solution!
    Jennifer R.
    National Instruments
    Applications Engineer

Maybe you are looking for

  • Firefox won't open; tried all I found on this site; can't get in to disable add-ons.

    Firefox will not open. Little wheel spins, then disappears. Nothing. Re-started computer - several times. Reinstalled Firefox. Nothing. Can't open in Admin. Can't open with double click or with right-click "Open". Many fixes on this site suggest goin

  • How to get rid of "home" arrow in navigation banner?

    I have published a navigation page (banner) as a portlet and made it part of my page template. When I view a page based on this template, the banner has a blue 'up' arrow that links to the homepage. I didn't insert this arrow, and it doesn't show up

  • If I reset my phone will it be locked again?

    So right now my iphone 4s is unlocked, i am wanting to sell it like that but i need to get everything off my phone like contacts, music, videos, clean out my text messages and everything. How do i do that without locking the phone again?

  • Is it possible to run a command prompt(or DOS Command)  and Activex File(.OCX)

    Hi all Is it possible to run a command prompt(or DOS Command) through flash.If it possible please guide me to do that throug as 2.0. and is it possible to run a Activex File(.OCX) through flash. Thanks and Regards Sankar.M.S

  • All Apps from App Store stuck on Waiting!!!

    When I try to purchase an app or try to download a free one. It goes to the dock and sits there and says "Waiting". I tried a clean install of Snow Leopard, downloaded the 10.6.7 combo, deleted caches, I've called apple support 3 times, no luck. What