Jump to content

MartinMcD

Members
  • Posts

    150
  • Joined

  • Last visited

Everything posted by MartinMcD

  1. Hello everyone, I have created a multiple-window application consisting of lots of independently running VIs. Each window receives data via a queue or notifier and process it in different ways. The example image below shows an issue that crops up a lot and I am not sure if I am solving it the right way. My method works perfectly but it doesn't seem very efficient... Within the main application there is a class which maintains a list of the active channels. That list is stored in a single-element queue. The children have access to a class member 'Get Channel List' which previews the data on the queue at any time. I use the class constant to hold the queue type and queue name just to be tidy - as you can see I do not pass any class wires in or out. This works fine, but if I want to keep polling this list then it means each time I am having to have the overhead of trying to create the queue, finding out that it already exists so just getting the reference, then previewing the element (okay I could use event rather than poll but you see the point). I use DVR & In Place Element Structure in another case and I have the same issue there - I store the DVR in a queue in the same way. I just wanted to check if what I have done is considered good or bad practice or whether there is a nicer way of doing this? Thank you, Martin
  2. Hi Greg, Sorry I popped off on holiday before I had chance to reply. Thanks very much for the help and all the information, that's fantastic. I shall have a look this afternoon. Best regards, Martin
  3. Hello there, I want to do some 'uneven' 2d interpolation and from my searches on the web/forum it seems that the way around it is to use the griddata() function in Matlab. Now, this creates the issue of my Matlab-using colleagues have a great time at my expense that I can't do it in native LabVIEW but I can live with that. http://digital.ni.com/public.nsf/allkb/d97af9ecd0236d6f862571d9005ea79f The question is - before I buy MathScript RT I to access a single function I was wondering if anyone knows of another solution? Thanks very much, Martin (LV 2010)
  4. Thank you for the good ideas, I will give it a go.
  5. I realise what I asked is impossible, Friday afternoon wishful thinking. The number of rows the user will need is not known at build time hence the array. Perhaps there is another way of getting what I want.
  6. Hello everyone, I was wondering if there is a way of having an emum or ring control in an array which has different strings for each row? The array element would be a cluster with two enum controls - the selection of the first would determine the strings available in the second. Unfortunately I do need to use an array. If I figure it out I'll post back. Thank you, Martin
  7. Morning all, I have an app that I am slowly rolling out across our department. Now, it is our IT departments policy that by default people do not have administrator privileges on their machines. Getting this default position changed is not a battle I am in a position to take on. Now, this is a Windows OS question really - does anybody know if it is possible to have an exceptions list of installers that a user can run? For example, everyone would be given the ability to run National Instruments installers even though they don't have admin. If it is possible, then this is an arrangement which would make my life hundreds of times easier and would probably be acceptable to IT. The numbers of machines I am talking about is significant (hundreds) so it is a real issue. Thank you for any help/pointers you can offer, it would be appreciated. Martin
  8. Thank you, I've added the relevant line to the registry in my installer and created a new version - I'll see if the problem goes away. Fingers crossed... Thanks, Martin
  9. Hello Shaun, That sounds like the nugget of information I need. Is windows indexing something I can turn off from within LabView? Please can you expand, I'm afraid I don't know what it is. Thank you, Martin
  10. Hello everyone, Well, this is a strange problem which is driving me around the bend. I have written an app that lets the user save out data as a tdms file. 90% of the time it works fine. However, sometimes when you hit save (in the app) the TDMS Open block throws error 8 saying that the file can't be opened due to a permissions error. The file is valid and available. It is really hard to recreate the error on demand. In fact, tonight I set a stub vi running which opens the same tdms file and keeps the reference open at all times. My 'proper' app can still write to the file properly when this is the case - I can't recreate the error. However, the app is used by >30 people and it is a real error, it crops up a few times a day and is causing a real problem. I'm wondering what is going on and whether I don't understand something to do with TDMS files. I don't understand the buffering option or the 'flush' command and I'm wondering if I'm missing something here. Please can anyone shed any light on my problems? Any help would be very very much appreciated. Thank you very much, Martin
  11. Brilliant, thank you, this works perfectly. A good way to end the week Thanks again, Martin
  12. Hello all, I am using the 'Get Image' method of a graph control to get the image data. I'd then like to use the Clipboard.Write method to copy the image to the clipboard. Does anyone know how to do this please? I know the control has the 'Export Image' method but the results are not great with this function. Thank you, Martin
  13. Ahh, looks like I should just use the intensity plot instead... http://digital.ni.com/public.nsf/allkb/1ADFF221E27F5B5886256E6F007C7B58?OpenDocument
  14. Hello there, At the moment I'm doing some acquisition & analysis in LabVIEW the result of which is a colormap using the XControl which is supplied with the Sound & Vibration toolbox. Because the default Rainbow colour scheme is not ideal for my needs I am exporting the data into Matlab and then plotting a colormap in there - where I have more control over the colours used. This seems a bit of a waste of time. Does anybody know if/how it is possible to vary the colour scheme used with this control please? Thank you for any help, Martin
  15. Hello there, Does anybody know if it possible to control the position of the graph palette at runtime? There doesn't seem to be an option but I hope I've just missed it. Thank you, Martin
  16. Great, it's working. I didn't have/any experience or DDE which turns out to be what I needed to know. Chris Davies gives the answer in his post (26) here: http://lavag.org/topic/4851-associating-my-exe-with-a-specific-file-extension-type/page__st__20 To open a file once the app is open, the Dynamic Data Exchange is used which requires a few more keys to be added to the registry (he lists it). The end result is that the OS Open Document is called and everything works swimmingly Thanks, Martin
  17. Hiya, I've got it half working my checking the App.Args property node on application start up. If I set it up like this then the file is correctly opened when the application starts. This is not using the OS open Document event though. If I try and open a second file with the application open then the OS Open Document event still doesn't get called. It seems like the arguements are getting passed over correctly but that the OS Open Document event is never called. Hmm, I'll keep looking. I did try the double-hyphen but it doesn't seem to make a difference (to the triggering of the event). Thanks, Martin
  18. Hello there, I've registered my application to open tdms files. The first bit works perfectly - double click on a tdms file and my application is opened. I'm now trying to get the app to open the actual file that was clicked on but I can't get the path passed in: - In the Advanced section of the build options I have ticked the select box to 'Pass all command line arguments to the application' - In the open command section of the regedit I've included the %1 as below. In fact, I've tried other combinations of speech marks [INSTALLDIR]myApp.exe "%1" - I've enabled EnableSuperSecretStuff in my ini file so that the 'OS Open Document' is now an option in the event structure and I'm capturing this event. When I run the app, as I say the app opens fine but this event does not trigger. Does anyone know if there is one last step I am missing please? Thank you, Martin
  19. Hello there, I have an array of clusters, 3 numeric controls per cluster. I'd like the user to be able to click in one of the numeric controls in one array element then right click and from a context menu choose 'set'. The contents of the active cell will then be replaced with a value I choose. - Is it possible to find which item in the cluster in which element of the array has focus, ie has the cursor flashing in it? Thank you for any tips, Martin Ahh, just realised it is straight forward - using the ArrElem.Value which is a variant and then using VariantToData to set it to the datatype of my cluster. Bingo. Thanks, Martin
  20. Ahh yes, thank you that is a nice idea and beats having hidden indicators floating around my front panel. Thank you for the tip! Regards, Martin
  21. It is a bit inelegant but I have come up with a solution. I create 10 string controls (more than I think I'll need) and get references to them. I then position each of the ones I need based on the range of the x axis and then hide the ones I don't want. A bit messy but it works fine.
  22. Hello everyone, I'm trying to think of a way of replacing the numerical values on the x axis of my plot below with text. The graph can be resized by the user and the number of bars changes as well. I've thought of an array of fill slides instead of a plot but they don't resize as nicely. My preferred option at the moment is an array of strings which I position under the x axis of the plot. This would work if there was a way of resizing the element width at runtime. Does anyone know of a way of tackling this please? I'll keep searching and post back if I figure it out. Thank you, Martin Perhaps I could use VI Scripting to the create/destroy the number of string controls that I need and then position the controls based on the width of the plot and the number of bars shown. I'm yet to try VI Scripting though...
  23. Hello again, I have a splash screen which loads at the start up of my vi. I've done it in the usual way - just a vi with the toolbar, titlebar, scrollbars turned off. It works perfectly. However, the vi window has a light grey border which makes it look raised above the desktop. I know it is a very minor thing but I want to get rid of it so I can have a flat splash screen. Has anyone noticed this and figured out a solution? I'll post back if I figure it out myself. Thank you for any help, Martin
  24. Thank you for the help, I shall try and implement the foreground picture idea, I hadn't realised they were available. Thanks, Martin
  25. Hello there, I was wondering if there is an easy/correct way of drawing a rubber-band/bounding box in Labview. I'll use it to let the user select a few points on a point. Getting the size that I need to draw the box is easy, my intention had been to then set the size & position of a transparent string control to give the outline of a box but of course I can't resize a string control at runtime, only set it's position. Any ideas would be great. I'll post back if I figure it out. Thanks, Martin
×
×
  • Create New...

Important Information

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