Default IconObj in SysTrayItem

Using (or providing) components based on the "Win32" framework
Post Reply
User avatar
ray
Posts: 238
Joined: Wed Feb 24, 2010 12:24 am
Location: Blackwater, Camberley. UK

Default IconObj in SysTrayItem

Post by ray »

I am creating a Popup SystemTrayItem using
Windows-64 17.0.33755.0 W Development
under Windows 7 and Windows 10 with the following code

Code: Select all

 Popup arg
⍝ Monitor for "Request to close" via ⎕DQ in system tray icon
 ⎕TNAME←'PopUp'
 '#.Tray'⎕WC'SysTrayItem'('Tip' 'ANTS is running')('Popup' 'Tray.m')
 '#.Tray.m'⎕WC'Menu'
 '#.Tray.m.s'⎕WC'MenuItem' 'QUIT'('Event' 'Select' '#.Quit')
 '#.Tray.m.sep2'⎕WC'Separator'
 '#.Tray.m.about'⎕WC'MenuItem' 'About Dyalog'('Event' 'Select' '[About]')
 :While 1<⍴⎕TNUMS
     #.Tray.Wait
 :End

Code: Select all

 Quit;res
 res←'Q'#.DLLS.Win_msg' Are you sure you want to exit Ants?'
 :If res≡1
     ⎕FUNTIE ⎕FNUMS
     ⎕TKILL ⎕TNUMS~⎕TID
     ⎕NUNTIE ⎕NNUMS
     'Killed'
     →
 :End


The SysTrayItem object appears as an icon in the Windows System Tray.
....
The IconObj property specifies the name of an Icon object used to display the SysTrayItem. If not specified, the default is the standard Dyalog APL icon.


This code works except that the "standard Dyalog APL icon" is invisible/transparent!

You can click on the location in the system tray where the icon should appear (even though you cannot see it) and the Popup window appears.

Have I done something wrong? Do I need to specify the IconObj explicitly?

Thanks
Ray Cannon
Please excuse any smelling pisstakes.
Post Reply