Modifying a front panel decorative box

Hi
I have an application whose front panel has several decorative boxes
(smooth and lowered style) used for aesthetic purposes. When my
application starts I would like to adapt my front panel display to
match varying screen dimensions. How would I go about dynamically
changing these objects? Do the boxes have any properties that are
modifiable?
Thanks
John

You can access references to the decorations via a front panel reference. Wire the front panel reference to a property node and select the controls property, it will give you references to all the decorations. You now need to know the indexes of the references you want, get those indexes and you can read and write the size property of the decoration(s). I have attached a simple example that resizes two decorations when the front panel is rescaled, just run it and resize the window...the properties will rescale accordingly.
In the example the rescaling is curde; it just finds how large a percentage the window has changed and change the size of the decorations approx. the same. In real life you may want to put in logic that controls the size in a more refine
d way.
Mads
MTO
Attachments:
DecorationRescaling.vi ‏52 KB

Similar Messages

  • Is there a way to disable all vi front panels in Teststand?

    I don't want any vi front panels to appear while my Testand program is running. My application uses a lot of vi's and I'm trying to avoid having to reset the front panel properties for each one. Is there a single option somewhere in Teststand to do this?
    Thanks.

    Hi kevmi2ca,
    One could uncheck the Show VI Front Panel When Called box in TestStand for each VI call, if it were checked.  There is no other control in TestStand to modify the Front Panel behavior of all VI calls. 
    This would be a great product suggestion to make at http://sine.ni.com/apps/utf8/nicc.call_me.
    Message Edited by AEDavid on 04-26-2007 04:02 PM
    Cheers,
    David Goldberg
    National Instruments
    Software R&D
    Attachments:
    frontpanel.JPG ‏44 KB

  • How can I fix the section of a front panel?

    Hi all
    My problem is that way that I'm not able to adjust the section of the front panel which should be displayed very time exactly like before.
    So every time I modify my front panel it look slightly different afterward when it's running.
    Therefore I'm wondering if there's any possibility to fix the section of a front panel which should be displayed while the VI is running.
    Every suggestions are welcome
    Ben
    Stay Hungry, Stay Foolish
    Solved!
    Go to Solution.

    Hi Ben,
    This is a common issue that NI LabVIEW does not address.
    The good news is that OpenG provides a function to do just what you need.
    See this article: Resize Front Panel to largest decoration
    The way to get the OpenG functions is to use the JKI VI Package Manager (VIPM).
    In addition to the OpenG functions there are several other community provided tools avaliable through VIPM.
    For a quick test, I'm attaching these files (LV version 2010 sp1):
    Fit VI window to Largest Dec__ogtk.vi and the required sub vi Current VIs Parents Ref__ogtk.vi.
    You should really use VIPM to get the full OpenG library - there are many gems in there.
    steve
    Help the forum when you get help. Click the "Solution?" icon on the reply that answers your
    question. Give "Kudos" to replies that help.
    Attachments:
    Fit VI window to Largest Dec__ogtk.vi ‏29 KB
    Current VIs Parents Ref__ogtk.vi ‏9 KB

  • Unexpected effect of Lock Front Panel in Event Structure

    I have been using LV intensely for only a short time, although I have dabbled with it many times since its first appearance. The "problem" that I have had may well be the intended behaviour, but it just seems unintuitive to me. I'm writing a small application to take measurements from a USB instrument. I have already written a basic driver for the instrument, which the application calls, and the driver is working as expected. In the application, the user can configure various settings and then click an Execute button to transfer them to the instrument. The click event is handled in an event structure along with other events. Since some of the instrument operations take an appreciable time, the first action that occurs in the click event case is to disable the Execute button using a property node so that further clicks are ignored until the operation completes, at which time the button is re-enabled.
    When disabled, the Execute button is grayed out as expected and clicking it has no visual effect. However, it seems that clicks made during the disabled period are still queued and acted upon when the button is re-enabled, causing the operation to be repeated.
    It is the solution I have found that seems unintuitive to me. The Lock Front Panel check box was checked (by default) for the click event, and I assumed that this would be the correct setting. However, unchecking the Lock check box actually makes everything worked as expected. Click events occurring during the disabled period are now ignored or discarded. I'm not suggesting that this is a bug, but I'm interested to learn why it happens, if anyone can explain. I have attached a picture of a simplified version of the event case.
    Attachments:
    Sample.png ‏7 KB

    I would say what you see is expected behavior, even though it's a bit complicated.
    The "Lock front panel until the event case for this event completes" option will only defer clicks and other things generating events until the current event handler completes. So this means that the click is placed in a queue and only evaluated once the event is finished. At this time, the button is no longer disabled, so an event is generated.
    When the "Lock front panel until the event case for this event completes" is not checked, the click is immediately evaluated, but it's happening on a disabled control, so it does not generate an event.
    From the LV help:
    By default, when an event enters a queue, LabVIEW locks the front panel that contains the object that generated that event. LabVIEW keeps the front panel locked until all Event structures finish handling the event. While the front panel is locked, LabVIEW does not process front panel activity but places those interactions in a buffer and handles them when the front panel is unlocked.
    Note If an event case that locks the front panel takes a significant amount of time to execute, consider using the Set Busy function or displaying a dialog box to notify the user that the front panel is locked.

  • "Shared Variable Control" combo box on Front Panel is empty after Build

    Hello;
    I have a project using shared variables and the DSC module. I am working on building a .exe application now that the project seems to run well.
    I have several places on the front panel where I have shared variable controls. These combo boxes allow the user to click the drop down button and browse the list of shared variables in the project, as well as "browse". When I run the VI from the project, the combo boxes fully populate with all of the deployed tags in the project (I have only one .lvlib in the project).
    When I build the project and run the executable, the only item in the combo box list is the "browse..." selection. I can click on that and browse to my variables, but it is much more time consuming to do so than to simply select the desired variable from the drop down list.
    So, how can I populate the list of shared variables from a particular library ino the Shared Variable Control combo box in a project build?
    A couple of things I have done to try to esolve th problem are ensure that the "Enable Enhanced DSC Run-Time Support" box is checked in the advanced tab of the build window, added the appropriate .lvlib file to the "Dynamic VI's and SUpport Files" window under the "Source Files" tab of the build window, and properly deployed the tag library programmatically in the project.
    Thanks,
    Michael Hampson
    Michael Hampson
    President
    XL Automation, Inc.

    Hi Michael,
    What you see in the development environment is to make it easier for developers, and as far as I know, there's no way to automatically populate the shared variable control during run time in an executable.  The reason being that the shared variable control would have no way to know which process it should be using to get the variables from.  The attached vi demostrate how you can acquire the list of shared variables in a process.  You can also set the default values of the shared variable control by right clicking it on the front pannel, go to Data Operations->Make Current Value Default.  I can do some more research on this, but I'm about 95% sure that there's no way to convert the array of shared variables to populate the shared variable control, as the shared variable control is a special type of xControl.
    Yi Y.
    Applications Engineer
    http://www.ni.com/support
    Message Edited by Yi Y on 07-02-2007 01:27 AM
    Attachments:
    SharedVariableList.vi ‏15 KB

  • Dialog box problem when controlling front panel remotely

    I have encountered an issue with the Web Publishing Tool- I have a VI that calls a subvi that uses the Promt User for Input function.  When controlling the front panel from another computer I get a message saying that you "Cannot control subVI front panels remotely" and points you to the machine actually running LabView to enter the information in the Prompt User dialog box.  I set the subVI front panel to show when called, which does show the front panel of the subVI, but still get the error related to the dialog box.
    Is there any way to make this work?  Am I missing something obvious?
    Thanks,
    Nathan

    Hi Nathan.
    There are some limitations with dialog boxes in remote applications.  This tutorial has some good examples and explanations on functionality to avoid with web applications.  Additionally, the LabVIEW online Help offers some general guidance for Viewing and Controlling Front Panels Remotely, which may help you in further developing your application.
    Hope that helps!
    Lorielle P.
    Applications Engineer
    National Instruments

  • Printing front panel of VI - no borders appear around the indicator box values

    Dear readers,
    I am using Labview 6.1 on a pentium PC with adequate memory etc. I've been trying to print out the front panel of my VI using a postscript printer and the post script printing options available in the Labview. I notice that the printed front panel doesn't show the rectangular borders that is supposed to surround the values contained in indicators and controls.
    Apart from this problem, everything looks good, such as it prints out in the way that I want...with nice white background to not waste ink.
    Could someone please advise me on what options to set up in order to print the borders around the indicator box values? Thanks very much for any help.
    I noticed that for
    an older Labview for the apple Mac, namely Labview 4 for the Mac, you can just print the window of the front panel and everything comes out wonderful....you get the borders around the indicator and control box values.
    Thanks again.
    Kenny Leong

    Hi Mike!
    Thanks for replying to my post. Greatly appreciated. Is it possible to set the colours for the indicator edges? I'll attach a screen capture of my front panel, and also a digi-pic of the print out. The printout is ok except there's no borders around the indicator values. I printed it out on a hp laserjet 6MP printer as well as on a hp 4050 printer and the printed panels have no borders around the values. I'll attach my front panel vi too. Thanks a lot Mike.
    Kenny Leong
    Attachments:
    labview_panel_screencapture.jpg ‏129 KB
    labview_printout.jpg ‏236 KB
    dip_res_resultswindow.vi ‏199 KB

  • Is there a way to place a button on the front panel that when clicked gives a pop up dialog box with more info in it?

    Hi Everyone,
     The simulations that I am creating are very simple themselves but are intended for use in a classroom setting to help students learn more about the theory being demonstrated.  I am hoping to be able to place a "Help" or "more info" button on the front panel so that if a student wants more info about the theory they can click on it and a pop up appears with background info on it.  It should also have a second button to close it and return to the main front panel again.  Can anyone lead me in the right direction?
    Thank you!
    Solved!
    Go to Solution.

    Use an event structure on the main vi that when the button is clicked, launches a "Help" sub vi. Inside the sub vi (with the properties set to load front panel when called of course), use another event structure to wait for the button of the subVI to be clicked so you can return to the main VI. Do you need help with using event structures?
    Charles
    Charles Chickering
    Architecture is art with rules.
    ...and the rules are more like guidelines

  • An alert messarge i don't underdant: insane object at BDHP + 83ACC in "VI name's":{graphics} (0x80):Front Panel Terminal (Term)

    Hello!
    I don't know why in just yesterday appear in one of my VI an alert message or error message when i want to close oer save the VI.
    The message is like the following one:
    Insane object at BDHP + 93ACC in "Vi name's": {graphics} (0x80}: Front Panel Terminal   (Term)
    I don't know why now it appears this message because i have no modify the Vi.
    I want to ask you why it appears this message and the most important......how can i solve it?
    Thank you very much
    Larson

    Hi!!! I copy and paste from an NI engineer post asking about what is the "insane object" problem:
    This message means that an object in LabVIEW such as a wire or a loop tunnel does not pass an internal test known as a sanity check. If the errors are serious enough, LabVIEW exits because something has become very corrupted. Sanity checks occur before each save, to ensure that corrupted VIs are not written over good VIs. They also happen as part of the compile process. Thus, sanity checks happen frequently. Many insanities are actually fixed (made sane) after the dialog box appears and will not appear again, so the first thing you should do after receiving an insane object error is to try to make a backup copy of the VI, run it, and perform some additional editing to see if the problem was resolved automatically.
    VI corruptions do not happen often. They can happen because of disk corruption, but this will often lead to a file that can no longer be loaded. Corruptions can also happen because the programmer did something that corrupts a LabVIEW data type, perhaps as the result of a call to external code. The following are examples of insane object errors:
    Insane Object at BDHP+4D50 in 'sksks.vi': (graphics) (0x80):wire segment (WIRE)
    Insane Object at BDHP+5CA0 in "CAPL3.vi": (graphics) (0x80):loop tunnel (DCO)
    In the first example above, the error message itself gives information about which object is insane. BDHP means the offending object exists on the block diagram heap, as opposed to the FPHP for front panel heap. The +4D50 is the hex offset in the heap where the object is located. The "Wire Segment" text indicates that the object is a wire object. The "graphics" text indicates that the insanity is graphics-related, which means it is not serious and will most likely be repaired automatically.
    The second message above is similar, but refers to a loop tunnel (i.e., the tunnel formed where a wire crosses the edge of a loop) rather than a wire.
    Solution: If you receive an insane object message, it is best to delete and recreate the most recently created objects on either the front panel or block diagram, depending on whether the error message contains "FPHP" or "BDHP". Make use of the text in the error message in deciding which objects to rebuild. In the case of the second message above, it would be best to delete and recreate the most recently created loop tunnels.
    Another workaround that works best if the VI is small is to select the entire diagram and copy it to a new VI. After saving the new VI, there is a good chance the insane object error will no longer appear. If the VI is too large to cut and paste to a new VI and another computer with an identical version of LabVIEW is available, you can copy the VI to disk (or to your network if that is available) and open it on the second machine. If the insane object errors do not appear, save the VI (on the second machine) and transfer it back to the original PC (by disk or by network). The new, uncorrupted version of the VI should now run without generating the insane object error.
    Hope that helps you,
    Jaime
    Regards,
    Jaime Cabrera
    NI Applications Engineering Spain

  • Is there a way the user can change the equation in the formular node from the front panel on the fly, dynamically?

    Is there a way the user can change the equation in the formular node from the front panel on the fly, dynamically?

    Sorry, I don't think so. That would be pretty cool if you could create a property node for a formula node and then enter a formula on the front panel and use it to update the formula. But you can't create a property node for a formula node and the only way of modifying the formula is by typing it into the formula node on the diagram. And you can't modify a diagram of a running VI.
    You could create a VI which is only a formula node with the maximum number of inputs and outputs you expect. Have a button on the calling VI to Edit Formula. When the button is pressed, use a VI server to display the front panel on the formula VI, display a dialog box telling the user how to display the diagram of the formula VI, then stop the calling VI. (You can't edit a sub-VI while t
    he calling VI is running). The user will then need to rerun the calling VI to use the new formula.
    You might be able to do something by calling MatLab or something like that to get an interactive formula window.

  • My front panel is causing my vi to run at the wrong frequency.

    My vi worked fine before I made my front panel into a useful GUI. The code was not changed only decorations, colors and position was changed. Now my vi will not operate at the correct frequency. I know this because I should be sending out a bit pattern at 25Hz and the oscope shows a change with the new vi. If I reduce this vi to 1/2 screen and the view the top of the front panel the vi runs fine as soon as I view the lower part of the front panel or go to full screen the frequency is wrong. I also found that by deleting two large decorative boxes the vi ran fine. I have played with the graphics settings and the only thing that helps is setting the resolution to 848x480 then the vi runs fine but looks funny.
    Any suggestions? Windows 2000 with LabView 6.1.

    Sounds like you are low on memory or CPU.
    Make sure you display is set for 16-bit color.
    Make sure none of the indicators are over-lapping.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Can a VI create front panel controls?

    Hi!
    Is it possible for a running VI to create controls on the
    front panel? I know how to modify controls but there are
    cases where I would like to have variable numbers of
    arguments without having to define them beforehand and
    fiddling with 'visible' attributes.
    Rudolf

    Hi Rudolf,
    As already mentioned, the is no out of the box solution.
    Some of the ideas that I have heard are;
    1)Extra controls off-screen, move and make visable when you want.
    2)Picture control- make it look like as many buttons/controls as you want, detect mouse clicks, make standard control visable on top of picture to get data, update you picture control. (manage the whole mess in a sub-vi using control refnums.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • I have a VI and an attched .txt data file. Now I want to read the data from the .txt file and display it as an array in the front panel. But the result is not right. Any help?

    I have a VI and an attched .txt data file. Now I want to read the data from the .txt file and display it as an array in the front panel. But the result is not right. Any help?
    Attachments:
    try2.txt ‏2 KB
    read_array.vi ‏21 KB

    The problem is in the delimiters in your text file. By default, Read From Spreadsheet File.vi expects a tab delimited file. You can specify a delimiter (like a space), but Read From Spreadsheet File.vi has a problem with repeated delimiters: if you specify a single space as a delimiter and Read From Spreadsheet File.vi finds two spaces back-to-back, it stops reading that line. Your file (as I got it from your earlier post) is delimited by 4 spaces.
    Here are some of your choices to fix your problem.
    1. Change the source file to a tab delimited file. Your VI will then run as is.
    2. Change the source file to be delimited by a single space (rather than 4), then wire a string constant containing one space to the delimiter input of Read From Spreadsheet File.vi.
    3. Wire a string constant containing 4 spaces to the delimiter input of Read From Spreadsheet File.vi. Then your text file will run as is.
    Depending on where your text file comes from (see more comments below), I'd vote for choice 1: a tab delimited text file. It's the most common text output of spreadsheet programs.
    Comments for choices 1 and 2: Where does the text file come from? Is it automatically generated or manually generated? Will it be generated multiple times or just once? If it's manually generated or generated just once, you can use any text editor to change 4 spaces to a tab or to a single space. Note: if you want to change it to a tab delimited file, you can't enter a tab directly into a box in the search & replace dialog of many programs like notepad, but you can do a cut and paste. Before you start your search and replace (just in the text window of the editor), press tab. A tab character will be entered. Press Shift-LeftArrow (not Backspace) to highlight the tab character. Press Ctrl-X to cut the tab character. Start your search and replace (Ctrl-H in notepad in Windows 2000). Click into the Find What box. Enter four spaces. Click into the Replace With box. Press Ctrl-V to paste the tab character. And another thing: older versions of notepad don't have search and replace. Use any editor or word processor that does.

  • Front panel of a vi pops up when i start my top level vi how can i stop this

    i have a vi that whos front panel should display when the user clicks a front panel button(test instructions),
    however this vi pops up when i run the top level vi. I can manually close the vi, but how do i stop this?
    i tried modifying the Sub VI Set up properties, but that doesnt work.
    Solved!
    Go to Solution.

    Hi jknapp,
    As egraham has pointed out, you can customize the window appearance of your sub VI from the VI Properties.  If you go to File » VI Properties, then under Category select Window Appearance and then Customize..., you should be able to control how the sub VI appears.  Hope this helps!
    Taylor G.
    Product Support Engineer
    National Instruments
    www.ni.com/support

  • Make LV VI front panel appear

    I am a TestStand newbie.  I want to make a dialog box with LabVIEW.  I am using the sequence editor.  I have made a very simple VI with two controls and an OK button.  There is an event structure which triggers when the OK button is pressed.  The problem is that when the vi is started, it does not automatically make the front panel of the vi visible.  I want to make the front panel visible and appear in front of the sequence editor.
    Solved!
    Go to Solution.

    You need to check the box in the Module window for that step that says Show VI Front Panel When Called.
    Also, if you installed TS after you installed LV then in your block diagram pallette there are some TestStand VIs which aid in writing TS subVIs.  There are 2 called: Start Modal and Stop Modal.  You can read about them in the help.  Basically they make the VI modal to TS.
    jigg
    CTA, CLA
    teststandhelp.com
    ~Will work for kudos and/or BBQ~

Maybe you are looking for

  • How do I find and download jazz music from the itune

    i am a new user of ipod. I seem to have trouble, after i get into the Music store, locating the different music selections. I am particularly interested in all jazz music. Clarence Jackson

  • Power down issue on a K9N SLI-2F (601-7250-090)

    I have a K9N-2F with the serial number 601-7250-090 Kxxxxblablabala According to the sticky on the powerdown issue it should not be affected. But since about a month it will power down when I download large files. It always powers down the first 5-6

  • User exits for sales order

    Dear all SAP experts, How to find out the user exits for sales document type? Especially the user exits which are called when we save the sales order. With best regards, Allabaqsh G. Patil

  • Problem with EP 7.0 insatllation

    Hi ALL, 1)     Our servers are IBM AIX 6.1 and P6 570 2)     Now I must install EP 7.0. 3)     What is my problem I am not having any experience in UNIX platform till now. But now I must install EP 7.0 on operating system AIX 6.1 4)     Can any one h

  • Runtime TIME_OUT  error

    hi select budat belnr wrbtr sgtxt kostl hkont xref3 gjahr from bsis into table itab_data where         budat in s_budat and gjahr in s_year and belnr in s_docno and hkont in s_hkont               and kostl in s_kostl . select budat belnr wrbtr sgtxt