Jump to content
Stinus Olsen

Put your LabVIEW in the Tray -- Once and for all

Recommended Posts

First of all, thank you for posting this :thumbup1:

 

I've used this in a couple of internal projects, and doing so I've seen and fixed a few issues.

The changes are:

* Fixed Dispose Notification Icon.vi so that it correctly removes the tray icon even if error

* Updated Set Tray Icon (string).vi so that you can have any image type stored as string on your block diagram

* Updated Set Tray Icon (string).vi VI description to reflect this change

* Added basic error handling to the example (dialog and clear)

 

The changes were made in a later LabVIEW version and backsaved to 8.6.

 

/Jonas

NotifyIcon_updated.zip

Share this post


Link to post
Share on other sites

Thanks for sharing the code. I am using it right now in one of my projects and it seems to work great.

I am trying to make one additional step and remove the application icon from the Windows taskbar (Windows 7) when the application window is minimized. I was basically trying to hide the icon in the taskbar, but no luck so far. I was searching also a lot online, but most of the postings suggest some 3-rd party tools.

Does someone know how it can be done programmatically in LabVIEW: hide (remove) the application icon from the task bar when the window is minimized?

 

Share this post


Link to post
Share on other sites

Set the front panel window to the window to hidden using the Invoke Node on the VI class (Front Panel >> Open - State).  And in your built EXE you may need the HideRootWindow = TRUE in the INI of the application.

My LabVIEW Tray Launcher uses this code to be minimized to the system tray, you can checkout the source here.

  • Like 1

Share this post


Link to post
Share on other sites

Thanks hooovahh !

I was changing already the state of the front panel to 'hidden' on 'Panel Resize / Minimized' event, but  'HideRootWindow = TRUE' did the trick. It looks much better now :-)

 

Share this post


Link to post
Share on other sites

Hello!

First of all, amazing toolset - very easy to get into and very functional.

I am, however, trying to use it in an executable. Maybe I just can't understand something fundamental but I can't get it to work. When I run the VI from Labview it works really well. When, however, I build the VI as an executable no notification icon appears. What is going wrong? 

Note_01: the first thing I tried was to include the toolkit in the project (the NotifyIcon.lvclass, that is), removing it from the user.lib. Nothing changed, though. 

Note_02: I've also added the NotifyIcon.lvclass in the "Always include" section. No difference.

Thanks in advance!
_____
Dimitris.

Goddammit, nevermind. I was just not pointing to the icon correctly. Damn noobs!

Edited by mpliax

Share this post


Link to post
Share on other sites

Hello,

I tinkered around with this toolkit/set a while ago but recently set up my PC completely Fresh. So i decided to go with a 64bit Version of LabVIEW.

Unfortunately the Toolkits/sets VIs do not work probably with the 64Bit Version of my application. As I investigated, the first 64 bit Version of LabVIEW was 2009.

I like to look for a solution by myself, but without any starting point it is hard.

 

Has anyone a clue what parts of the Toolkit/set are maybe influenced depending on whether you use the 32 bit version or 64 bit Version.

I think it is unlikely that the Problem her is NET because I have several Toolkits hat simply work with newer/other versions of NET and LabVIEW.

 

Thank you

Ksanto

Share this post


Link to post
Share on other sites

Most likely library calls, or names of .Net classes.

In the first case make sure that all pointers are 64bit, in the latter one need to make a switch case or object based solution to choose proper constructors based on "bittyness" of the LV execution system. 

Share this post


Link to post
Share on other sites

Thank you _Mike_ for pointing me in the Right direction.

"Point" here was the right buzzword. But nerver mind, it was another Toolkits VI I had placed deep in the Code, I did not know that it calls anything outside LabVIEW.
Sorry and thank you.

Regards

Ksanto

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

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