Jump to content

Michael Aivaliotis

Administrators
  • Posts

    6,196
  • Joined

  • Last visited

  • Days Won

    103

Posts posted by Michael Aivaliotis

  1. I'm not sure if you are referring to embeded panels. I'm assuming you need a standard pop-up VI.

    The easiest way to create a pop-up VI panel is to set the VI to open the panel when called and close the panel if originaly closed. See the attached image:

    In order to bring up this property window, you must right-click on the icon in the top-right corner of the front panel of the VI you want to make pop-up.

    post-10-1073107920.gif?width=400

  2. I think you're in trouble there. There are several people who have attempted to crack the passwords in VI's but have not succeeded. In any case, you may still have an option. National Instruments may be able to unlock the VI's for you. You have to prove that you are the owner of the code. If you are truly the owner of the code and you have your name or company name printed somewhere inside the diagram or fornt panel, then Ni will help you.

    This information was given to me several years ago. I don't know if NI still performs this service.

  3. A similer question was posted on Info-Labview. Here was my response:

    > I don't know what version of LV you are using but try this:

    >  

    > LV7 & 6.1: In Tools>>Options>>Miscellaneous, enable:

    > -Treat read-only VIs as locked

    > -Do not save automatic changes

    >  

    > See if this helps.

    >  

    > Michael Aivaliotis

    >  

    > > Is there a way to skip the "save" dialog box when shutting down  

    > > LabVIEW?  I use a mix of common

    > > code downloaded from a server and local code specific for each  

    > > test set.  Whenever I shut down the

    > > program (LabVIEW vi's) it will always prompt the tester to "save"  

    > > all changed vi's.  The changed

    > > vi's are from the server and "ask" to be saved because there path  

    > > has been changed.  But, I don't

    > > want the testers to save these vi's.

    > > Is there a secret .ini setting or some other method to achieve  

    > > this effect?

  4. Well, I don't think there are any exposed properties for this. There may always be some hidden ones. :wink: In any case, there may be a workaround, it depends on what you're after. If you use the "classic" cluster then you can make it transparent. This will make the frame go away and then you can put another object behind the cluster so the outline of it is shown behind it. Then you can change the colour of this object (color box?)via a property node. There is another option to embed this object as an element within the cluster. However this introduces an unnecessary data object which you may not want.

  5. I think I found your problem. You should never split the event registration refnum. If you delete the connection circled in the image below you will see that everything works fine. You are not using any of the dynamic events in that event structure anyway so why do you have it wired?

    I think this was mentioned at NIweek this year in the presentation on event structures. Even though the top event structure does not have any event cases to handle the events, it still looks at the events and if it catches it first will discard the event.

    post-15-1073112042.gif?width=400

  6. The key point here is the question by your customer "how much more efficient will the software development be". This is really a moot point since LV version 3.0 is not supported anymore. It's just like saying how much more efficient is it to work with WinXP vs. Windows 3.11? Can you quantify that? It's unfortunate that you cornered yourself like this. Does the customer really have a choice in using LV3.0? Not really, you need to explain this to them.

    I assume they are trying to reduce the cost of integration by pointing out that you will be able to develop the project faster and cheaper in LV7.0. LabVIEW is still LabVIEW. You still use wires to connect objects and you still have a front panel and a diagram. On the other hand, NI has introduced several wizards that allow you to acquire and view data using only 3 nodes. In essence, you can develop a system in 5 minutes!... Or can you? I'm not sure what you are developing and how the new LV7 features will benefit your development. You need to discuss this with your internal engineers and decide how much of a savings you really have. Assuming you are a systems integrator, you probably have a library of code to dip into or old projects to recompile. This is where your real savings are, in code reuse.

  7. I'm sorry no-one else responded in a reasonable time but I'll try to close this one off for others that might be in the same predicament.

    Basically you need to use a shift register. You can right-click on the borders of FOR and While loops to create shift registers. The shift register is a powerful tool and it allows you to carry the data from previous iterations into the present one. So, in your case, you would average the new data (add then devide by 2) with the previous data then pass it along back on the shift register. This can be repeated for as many iterations as you wish. On the outside of your loop you can place the saving of your data. At that point you would have an average of all the dat collected from previous loop iterations. This would be carried on the shift register.

  8. I agree with Jack that the picture control will do it, however (be warned) it's NOT a walk in the park. If you don't mind using ActiveX controls you can probably find one that will do what you want. Do a search for "activex controls" on the web and you will uncover a goldmine of stuff. Some of what you find are products you have to buy but they probably have free timed versions. Other items are free...

    One link I found is this:

    http://www.programmersheaven.com/zone15/ca...at228/index.htm

    If you need any help with ActiveX, let me know. :)

  9. I have consulted with some people from National Instruments during NIWEEK 2003 and it may be possible to borrow their webcasting capabilities to assist the LAVA user groups in performing LIVE webcasts of meetings. However, if this is not possible we will forge ahead on our own and figure out a solution.

  10. It appears to be a known issue. I just got this from Info-Labview:

    It appears to be a known issue, and it's documented in the support  

    section of the web site. The url is:

    http://digital.ni.com/public.nsf/3efedde43...bf?OpenDocument

    The same page also provides a fix for the problem. You need to download  

    and replace a system VI of LabVIEW 7. I did, and LabVIEW now can  

    correctly configure SourceSafe as its SCC provider.

    Nicola Chiari

    SIDeA S.p.A.

  11. Has anyone gotten LV7 to work successfully with Microsoft Visual SourceSafe? It appears that this version of LV has problems integrating with it. I have sent a support request to NI. I can reproduce this on three different computers. Anyone else out there?

    I keep getting an error message that says: "Microsoft Visual Studio is not installed". However it is definitly installed...

  12. There is a new feature in lv7 that auto-relinks the item names in the bundle by name node if you rename the objects in the cluster. I wonder if this is the culprit. In any case this is what happens. You can create a strict-typedef cluster and leave it unnamed. This is fine because you can assign a name to it when you actually use it. In my case, I use typedef clusters inside other typedef clusters. When I place it, I label it.

    The fun starts when you decide to disconnect the typedef cluster. When this happens, LV tries to use the original name given in the typedef. Of course since this does not exist, it shows up as a blank entry in the bundle by name. If you try to relink it, you can't, because empty names simply don't exist in the pull-down list.

    Now why would you want to disconnect the typdef, you ask? Well, you may not want to but the application builder shure as hell wants to! it breaks all the links to the typdefs and uses plain controls. Once it tries to do this it finds a whole bunch of bundle (and unbundle) by name nodes that it can't resolve.

    I've attached an image of the solution that uses a plain bundle. Also and image of what happens when you disconnect a typedefed object. I've also attached a toplevel.vi that you can try to build into an application. If you open the built app, you will se that the vi is broken.

    subbundlebug.gif

    Download File:post-16-1073112613.zip

  13. A bit of head scratching and some head banging later, I figured it out. The solution is quite simple actually. Lucky for us, the last event which occures after you the mouse is up, is registered and shows as being equal to previous. This will do exactly what I want. Some extra checking is required to trap maximize and restore sizes, but overall is a robust solution.

    post-15-1073111495.gif?width=400

    • Like 2
  14. With all this talk lately of subpanels and how they compare to "true" child windows, I decided to see if i could create this same effect with the new sub-panels in LV7.

    In the LabVIEW examples, there is a VI that shows how you can dynamically register events and click+drag a front panel object. Using this same approach, I tried to do the same with subpanels. The only drawback is that when you register the subpanel event, you lose the ability to click on the subpaneled VI.

    I thought it would be nicer if you were limited to dragging the titlebar (just like child windows). I then proceeded to edit the subpanel frame and make it "look" like it had a titlebar. Oops, editing the sub-panel frame is forbidden! I then decided to embed the subpanel in a cluster along with a boolean. the boolean would simulate the titlebar. This approach seems to work well. The only thing left to do is track when the mouse is on the edge of the cluster and perform resizing (like child windows).

    Too bad resizing subpanels and dragging isn't automatic. :roll:

    parent-child.gif

    Download File:post-15-1073110865.llb

  15. Someone emailed me the following:

    I had an interesting discussion over email with someone from NI about the callbacks in general, and the impression I got was that they implemented them to make ActiveX events cleaner, but they weren't really a big fan of them with regards to how they're nearly the opposite of data flow programming.  That would lead me to believe it's the somewhat typical reaction NI has to LabView features they don't really like, they'll add them in but not disclose them at all, hoping people simply don't notice.

    Some more discussion at NIWeek is expected... :)

×
×
  • Create New...

Important Information

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