Events in empty sub-panels

I have a user interface concept that I'm investigating.  The end application is to monitor the status of some parameters in equipment racks.  Since there is limited space on the screen and since there are so many racks, I thought it might work for the client to be able to click on an empty sub-panel in an array of sub-panels on the user interface and be prompted for the name of the rack that should have its information displayed there.  When the selection is made, the miniature front panel for that VI would be placed in the sub-panel.  My experiment, however, shows that there does not appear to be any events on sub-panels.  Is there any way to do this other than by using the coordinates of the mouse click in the Pane event?
Solved!
Go to Solution.

These are both interesting options.  The problem with using dynamic event registration is that it requires a priori knowledge of the number of sub-panels that will be used.  This is not a problem by my original statement but I have plans to script this process later on so I will now focus my attention on how to script a new sub-panel and insert a VI into it.
Having used JavaScript in a browser environment, there is a method called event bubbling that allows the object to handle any event enacted upon it.  If that event handler is absent, the event "bubbles" up to the next level in the DOM tree and continues to do so until a handler is found to process the event.  This is the sort of thing I was looking for in LV.
Thanks to both of you for your comments and suggestions.

Similar Messages

  • Handling User Events in sub panel vis and main vis with same Event reference Number.

    Hi All, Iam trying to work to handle events in both subpanel vi and main vi.
    I have a main program, and 2 sub vi. I will load the sub VI in 2 sub panels in main vi. Each sub pael vi has controls on it.
    I have created 2 User events for 2 sub panels vi. One user event consits of a Cluster with 2 Booleans (x & Y) and Other User Event consists of cluster of 2 unsigned 8 Numbers (a & b). These are created and registered in the main Vi and event register refnum is passed to the subpanel vi from the main panel vi.
    I have Event structure in main panel and sub panel vis.
    In one sub panel vi, When the value of one boolean(i.e. X) in the clusters changes, the Events structure in sub panel vi should perform some operation in sub panel vi only. When the value of other boolean (i.e. Y) changes it should perform some operation in main vi. I will try to Generate user event with the x value and Y value changed based on the control clicks in the sub panel vi.
    The OTher panel vi should behave in the smae way when the a & b value changes.
    The "Generate User Event" is working fine some times and sometimes there in no event triggered in the sub panel vi or main vi.
    Please let me know what is the problem Ramesh.

    There is a lot of talking, but not much understanding.  It'd be better if you posted some example VI's of what you are trying to do so that the words will make sense.
    One thing I can tell you is that you don't want to have two event structures handle the same event reference number.  You want to have two event registrations with each one going to its own event structure.

  • Controlling VI from inside the Sub-Panel

    I have a prog which is used as the Main prog and has a sub-panel in it,whenever an event is occured iam popping up an VI,which should be inside the sub-panel,when i press the stop button which is inside the sub-panel,the vi should stop

    And what is the problem....?;-)
    Sub-Panels just show the front panel of the VI you choose to show. When the event that should show a certain VI fires just make your code so that it will run the VI in question...and then set the sub-panel to show that VI. In the VI you need a button and code that will make the VI run until the button is clicked.
    That's it.
    Now you may the VI or multiple VIs to run in parallell, or you may want to send a stop message to the main VI from the VI in the sub-panel when the button is hit...For the first problem, call the VIs using an invoke node and the wait until finished set to false. For the latter problem use e.g. a functional global, que, event, occurance or a notifier.
    If there's a patricular part of this design that you h
    ave a problem with, let us know. If you can upload example VIs we can edit to show the behaviour you need, include those.
    Mads
    MTO

  • Triggering events in a sub-VI

    I am trying to incorporate a subVI with event handling into a main VI.  Changing values on the main front panel does not elicit changes in the values of the controls in the subVI to which the main controls are wired.  I have attached a simple example to demonstrate my problem.
    In these VI's, the subVI works independently with three different event cases handling 4 different events.  When this sub is placed in the Main Message VI, it loses functionality because the events in the Main VI do not cause the same events in the subVI, which is what I intuitively thought.  (You will be able to use the subVI independently, but the main VI will not act and you will have to use the stop sign to break it). 
    This example is redundant, I know.  And I know of a help file and an example of dynamically registering events, however, I can't make heads nor tails of it.  Dynamically registering events seem to work in the opposite way, where the event handler is in the main VI and changes in the subVI elicit event handling in that frame. 
    Any ideas?  Am I completely wrong in my conception?
    Thanks,
    Brad
    Attachments:
    Message Main.vi ‏10 KB
    Event trig sub.vi ‏14 KB

    Hi Brad,
    Your assumptions are correct regarding events with subVIs and TopLevel VIs.  Successfully detecting an event in a SubVI from a top-level VI requires some more work and can be done with LV 7.0 and higher. I will try to talk it out on how to do it:
    The link between
    the VIs is a reference to the front panel object that will trigger the
    event. To detect a front panel event that occurs in a SubVI from
    Top-level VI, do the following:
    In the SubVI, do the following:
    Place a control reference function on the front panel for all the events to be monitored.
    Place a "register for event" function on the block diagram.
    Register all the events to be monitored by connecting all the control
    references to the register for event function and select the event to
    be monitoredEnable the dynamic event terminal on the event structure by clicking on the structure and selecting "Show Dynamic Event Terminal ".
    Connect the register for event function to the Dynamic Event Terminal
    and edit the event handled by each case. Make sure you select the
    control and event to be monitored under dynamic source.
    Place "unregister event" function after the
    event struture and wire it to the output of the dynamic event terminal
    to unregister the event.
    The front panel event will now be selectable as a dynamic event.
    In the Top level VI, do the following:
    Create a reference to the front panel Control in A. To do this, right click on the control and naviagete to "Create»Reference"Place the subVI created in 1 onto the Top-Level VI.
    Pass
    the reference from A to B. Connect the control reference to the
    corresponding control-reference input created in SubVI.
    I have attached two screenshots on how to do this.  Hope this helps.
    Regards,
    Nadim Rajabi
    Applications Engineering
    National Instruments
    Attachments:
    EventSubVI.gif ‏2 KB
    TopLevelVI.gif ‏2 KB

  • Loading independent sub vis in sub panels and calling from main vi

    Hi all,
    I have trying to work on the following requirement.
    I have a main vi with a file browzer and sub panel - Channel . I will select a channel configuration text file which contains Analog and digital channels names. ''
    My vi will read that file and loads and Channel VI in the sub panel - Channel.
    Now the CHANNEL VI has a tab control with 2 pages analog and digital. Each page again has sub panels i,e. sub Panel - Analog and sub-Panel-Digital.
    Analog VI with some knob controls which are binded to Signals are displayed in the sub Panel - Analog.
    Digital VI with some boolean controls  which are binded to Signals are displayed in the sub Panel - Digital.
    These vis will show the values acquired from the hardware.
     I want to provide the user to load any channel configuration file and acquire the data. For the first time the execution is working fine. The next time when I tried to load a new configuration file. it says "Invoke node in main cvi <Append> Method Name <b>Run VI</b> and the new configuration is not loaded.
    The following logic is implemented as a sub vi to load and close the sub panel vi.
    VI Load logic:
    VI CLose Logic
    So please let me know where am i doing wrong.
    Before loading the new configuration file Iam calling the close logic . But still is not working.
    Thanks in Advance.
    Ramesh.

    Can you post a vi snippet? It would be helpful to see your logic flow, I'm wondering if your problem is that you've got "remove vi" node at the end after you have already closed the vi reference - but can't tell if same vi reference are used as in the case of top diagram.
    -DP
    New Controls & Indicators made using vector graphics & animations? Click below for Pebbles UI

  • How to get rid of scroll bars in sub panels when displaying a VI which is part of a class?

    I am writing an application that applies different analyses to a set of data. The program must be flexible configurable. To not clutter the GUI with too much elements I ended up with the idea to load the needed user interfaces for each specific analysis dynamically into a single sub panel when needed. This works well without any problem.
    Due to the fact that all analyses share some common functionality I have decided to use LabVIEW classes for implementation. Each class has one VI representing the user interface to show in the sub panel.
    This works also well BUT the sub panel always shows a horizontal and vertical scroll bar I don't want to see!
    I have already learned that I need to change the user interface VI to a custom "Window Appearance" and disable the "Show scroll bar" properties. But this seems to work only for "normal" VIs but not for VIs that are part of a class.
    Any ideas?
    Ingo
    Solved!
    Go to Solution.

    Thanks Pixar, this was the right tip!
    Although: there seems to be a difference between "normal" VIs and VIs that are members of a class.
    For "normal" VIs it is sufficient to set the property to "Off While Running" and it works as expected.
    VIs part of a class need the "Always Off" setting" which is only accessible via right click on the scroll bars but not via the VI's properties box.
    Thanks and Regards
    Ingo

  • How do you add an application event to the Applications Panel

    How do you add an application event to the Applications Panel.
    My previous post referred to .ashx files, and the problem seems that Firefox, by default, does not recognize a .ashx format being read by Adobe Acrobat.
    Therefore there needs to be a way to add Applications and Events into the Applications Panel under Preferences

    domdp wrote:
    ...I have Theme L selected and I get 10 icons along the left side and bottom....
    ...I am thinking I may be limited to 10 icons....
    Gotcha... But actually its limited to 9 icons in the L theme as the Profiles icon is always present. From that screen hit the Menu key to display the bigger list of icons. Arange them so the first 9 icons are the ones you want to see on the L theme.

  • Problem with multiple sub-panels through Enum case structure: "The VI is not in a state compatible with this operation"

    Hello,
    I am using LabVIEW 8.0 and I am attempting to create a sub-panel that displays the front panel of a sub-vi depending on the selection made by the user via the Enum dropdown menu.  I have wired the Enum to a case structure and applied identical coding to each individual case structure except for obviously changing the sub-vi source.  However, I receive an error "The VI is not in a state compatible with this operation."  I was able to successfully make a single sub-vi work within a sub-panel using a true/false case structure and the exact same coding.  However, now that I am using an Enum box wired to a case structure, I receive this error.  I have attached my block diagram as well.  Could anyone assist me as to where it is that I am going wrong?
    Thanks in advance!
    Solved!
    Go to Solution.
    Attachments:
    enum subpanels.JPG ‏22 KB

    torm wrote:
    I have attached my block diagram as well
    I only see a picture. Can you attach the VI instead? At what point do you close the reference?
    torm wrote:
    I have wired the Enum to a case structure and applied identical coding to each individual case structure except for obviously changing the sub-vi source.
    Well, if the code is identical except for the source, only the source should be inside the case, right? Why duplicate code?
    LabVIEW Champion . Do more with less code and in less time .

  • ActiveX controls disappear when VI is loaded in a Sub-Panel with Start Modal Dialog usage

    Hi,
    I have a subpanel in a VI (VI1) in which another VI (VI2) is loaded. VI1 is used as a module for an Action step in TestStand. VI2 has ActiveX controls like ExpressionEdit and Adobe PDF reader etc. VI1 loads VI2 in a sub-panel and calls Start Modal Dialog.vi. I have set 'Show front panel when called' to true for VI1 so that the VI pops up when the sequence is run. When the sequence runs and when the Start Modal Dialog VI is called from VI1, all ActiveX controls in VI2 (loaded in the sub-panel) disappears. Here is the screenshot of the frontpanel of VI1 when the sequence is run:
    This problem occurs in TestStand 4.2.1, TestStand 2010 and TestStand 2010 SP1 (as far as I have tested. May occur in older versions too). In the attached file, VI1 is 'ExprEdit Test.vi' and VI2 is 'SubpanelLoad.vi'. The attached sequence is developed in TestStand 2010 SP1.
    How can this issue be solved?
    Thank you,
    Ganesh Kumar
    Solved!
    Go to Solution.
    Attachments:
    Subpanel Load ExpressionEdit problem.zip ‏23 KB

    Hi,
    An update on this issue: I tried changing the order of loading the VI in the SubPanel and the start modal dialog. I called start modal dialog and then loaded the VI (VI2) in the SubPanel. When I ran the sequence, the activeX controls did not disappear (I was pretty sure that the ActiveX controls in VI2 would not disappear since I am calling Start Modal Dialog before loading the VI in the Subpanel). Then I just changed the sequence of operations back to the previous order (loading the Subpanel with the VI and then calling the Start Modal Dialog). When I ran the sequence, the activeX controls where still displayed. But when I ran the sequence with the VI1 backup (that I had taken before making all these modifications) the activeX controls were not displayed. I a nutshell, I now have 2 versions whose codes are the same. But when I run the sequence with action steps for these VIs, the activeX controls disappear when the unmodified backup VI runs and does not disappear when the modified VI is run. I have attached the files that I used along with the sequence file. The details are as follows:
    ExprEdit Test (Not Working).vi - The unmodified backup VI for which the ActiveX controls disappear.
    ExprEdit Test (Working).vi - The modified VIs in which the ActiveX Controls do not disappear (But same code as ExprEdit Test (Not Working).vi).
    ExpreEdit Test.seq - The sequence file containing 2 action steps one each for theabove mentioned VIs.
    SubpanelLoad.vi - The VI that contains activeX controls and is loaded in the SubPanel.
    Note that the sequence is created in TestStand 4.2.1.
    Thank you,
    Ganesh Kumar
    Attachments:
    Subpanel Load ExpressionEdit problem.zip ‏36 KB

  • How do I get the Basic and camera calibration sub panels in the develop modual to come back after they go away on there own?

    I was working on images and then when I picked a different image the basic and camera calibration sub panels disappeared. How do I get them back?

    Right click on one of the other headers and a popup will appear and you can select the ones you need to view.

  • Vi's with sub panel

    hi
    i want to run an aplication on fp-2010 which have sub panels(panel embedding)
    but i got the following problems
    1.vi's with sub panel are not loaded on fp-2010
    2.and not supported by Lab VIEW Real Time
    can any one help me in this regard or suggest any other method that i run my application with fp-2010
    OR can i use any other tecnique which give the same functionality as sub panels and compatible Lab VIEW Real Time
    regards
    mazhar

    duplicate post

  • Sub panel vi cannot be loaded properly when main vi is converted to exe

    Hi All, I have a main vi that uses sub panel to call another single vi during the operation. The code is working well in vi level. However, When I converted the main vi to exe file, this sub panel cannot load that single vi properly.
    The error shows"  Built Application or Shared Library (DLL): Make sure all dynamically loaded VIs were properly included in the build specification for the application or shared library.  LabVIEW Real-Time: VIs built into executables cannot be accessed through VI Server calls. Use Source Distributions to dynamically call VIs on Real-Time targets."
    Here is how it is used in sub panel, could you tell me how can I change the path building to make this work in exe file? Thank you very much!
    Solved!
    Go to Solution.

    Path-specific issues are typically caused by this: http://digital.ni.com/public.nsf/allkb/FD7DE8BC8FFC256C862565F4006BE363
    In terms of the build, you must explicitly add dynamic VIs to the list of source files. These need to be in the "Always included" list on the "Source Files" tab. Please review the documentation for the App Builder for further information and details.

  • Is ist possible to start a vi in a vi sub panel?

    hello,
    is it possible to start a vi with his functionality in a sub panel? or is there another way to do this?
    markus

    I think the answer is yes, it is possible to start a VI within the
    subpanel.  See 'simple.vi' within the examples, or search the
    examples for "subpanel"  You have to use an invoke node to start
    the VI.  See the attached pic of the block diagram.
    Attachments:
    Image1.png ‏19 KB

  • CSA MC Events Log and Agent Panel Events Corrolation

    I have recently install CSA MC 6.0.0.201 and the agent on a Win2003 server. I have a question of events showing up in the agent panel and not showing up in the MC events log.
    I see a number of events in the agent 'panel' event viewer. At the end of the event is a number in brackets like [176].
    When I look at the MC event viewer but those events are not being reported.
    My query is:
    #1 I believe the example [176} is the rule being triggered. So if the event is not showing up in the event viewer how to I find that rule in the policies? I finally did stumble across the rule and I see that logging is disabled for that rule, but finding that rule was a needle in the haystack search. Is there an easier way to find rules?
    #2 Maybe I do not understand this part but in the MC I placed this server (the one with the MC) into 'Audit Mode' in hopes that would get the events from the agent to show up in the MC event log. No good. Is there a way to get all events - even if the rule says to not log the event - so show up in the MC log so I can creat an exception?
    Thanks
    Larry

    Tom,
    I think I may have made some progress. Yes I'm in advanced mode. I went into Systems | Groups and first selected the 'Servers' and turned on logging. Still most the events in the agent event viewer were not making it to the MC event log.
    So I went back in to the Systems | Groups and found there was a group called 'Servers - CSA Management Center' and turned on logging there and that got the events to start flowing into the MC events.
    Maybe this will help me get going.
    Larry

  • Sub Panel in Application Builder

    My VI has a sub panel with with a sub vi front panel displayed in it.  When I build my application the sub panel is no longer visible.  How do I get it to show up?
    Solved!
    Go to Solution.

    there is a simple subpanel.vi example you can take a look at.
    its in the examples.
    Best regards,
    Krispiekream
    Attachments:
    subpanel.llb ‏23 KB

Maybe you are looking for