473,804 Members | 2,787 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

How to make a non square Sys Tray Icon?

I searched for a couple hours lastnight on example code of how to go
about making an item in the System Tray (notification area) not be
square. I've found several programs that do this but I can't seem to
find any documentation on how to actually get this to work.

I checked out some system messages that NotifyIcon uses thinking that I
could just make my component from scratch using these but nothing seemed
to be allowed to adjust the width of the icon.

Does anyone have any ideas? Eventually I want to have an item that
takes up two slots horizontaly, or an area like the clock - I know I can
create text by making a bitmap, drawing on it, and converting to an icon
- that's all working - but actually getting that to show up correctly is
giving me a headache.

Thanks in advance,
Benny
Jan 5 '06 #1
7 2738
Benny,

You can't do this. The icon has to be 16x16 I believe. No other size
is allowed.

Hope this helps.
--
- Nicholas Paldino [.NET/C# MVP]
- mv*@spam.guard. caspershouse.co m

"Benny Raymond" <be***@pocketro cks.com> wrote in message
news:uR******** *****@TK2MSFTNG P10.phx.gbl...
I searched for a couple hours lastnight on example code of how to go about
making an item in the System Tray (notification area) not be square. I've
found several programs that do this but I can't seem to find any
documentatio n on how to actually get this to work.

I checked out some system messages that NotifyIcon uses thinking that I
could just make my component from scratch using these but nothing seemed
to be allowed to adjust the width of the icon.

Does anyone have any ideas? Eventually I want to have an item that takes
up two slots horizontaly, or an area like the clock - I know I can create
text by making a bitmap, drawing on it, and converting to an icon - that's
all working - but actually getting that to show up correctly is giving me
a headache.

Thanks in advance,
Benny

Jan 5 '06 #2
Benny,

I suspect you are having trouble differentiating between image formats. The
format used in the system tray is *.ico - You need to use transparency in
your *.ico to give the icon a non-square look (as the standard windows
"volume control" icon does.) Visual Studio is capable of creating such
icons.

I think Nick is correct... the standard Win32 API does not allow for
"multi-slot" tray icons.

--
Colin Neller
http://www.colinneller.com/blog

"Nicholas Paldino [.NET/C# MVP]" <mv*@spam.guard .caspershouse.c om> wrote in
message news:en******** ******@TK2MSFTN GP15.phx.gbl...
Benny,

You can't do this. The icon has to be 16x16 I believe. No other size
is allowed.

Hope this helps.
--
- Nicholas Paldino [.NET/C# MVP]
- mv*@spam.guard. caspershouse.co m

"Benny Raymond" <be***@pocketro cks.com> wrote in message
news:uR******** *****@TK2MSFTNG P10.phx.gbl...
I searched for a couple hours lastnight on example code of how to go about
making an item in the System Tray (notification area) not be square. I've
found several programs that do this but I can't seem to find any
documentati on on how to actually get this to work.

I checked out some system messages that NotifyIcon uses thinking that I
could just make my component from scratch using these but nothing seemed
to be allowed to adjust the width of the icon.

Does anyone have any ideas? Eventually I want to have an item that takes
up two slots horizontaly, or an area like the clock - I know I can create
text by making a bitmap, drawing on it, and converting to an icon -
that's all working - but actually getting that to show up correctly is
giving me a headache.

Thanks in advance,
Benny


Jan 5 '06 #3
If it's not possible, how are programs doing it? Check out this program
for instance:

http://www.birdcagesoft.com.au/ (click on the weather software button)

and this one:

http://www.zonetick.com/ (they have all sorts of different non standard
icons showing up)

both are completely different types of programs and both have non
standard "icons"

Nicholas Paldino [.NET/C# MVP] wrote:
Benny,

You can't do this. The icon has to be 16x16 I believe. No other size
is allowed.

Hope this helps.

Jan 5 '06 #4
I know about transparency in icons - I use it all the time - what i'm
talking about is different - please see my post RE Nicholas's post

Colin Neller wrote:
Benny,

I suspect you are having trouble differentiating between image formats. The
format used in the system tray is *.ico - You need to use transparency in
your *.ico to give the icon a non-square look (as the standard windows
"volume control" icon does.) Visual Studio is capable of creating such
icons.

I think Nick is correct... the standard Win32 API does not allow for
"multi-slot" tray icons.

Jan 5 '06 #5
Those programs don't appear to be written in .NET. You can always make a
PInvoke call to get to the unmanaged Win32 API. Try searching through the
Win32 forums or on www.pinvoke.net.

Alternatively, you could use a "toast" feature to keep the systray icon
small but popup a larger window periodically. Avalon (WPF) has very nice
support for Toast-style applications.

"Benny Raymond" <be***@pocketro cks.com> wrote in message
news:Oc******** ******@TK2MSFTN GP14.phx.gbl...
If it's not possible, how are programs doing it? Check out this program
for instance:

http://www.birdcagesoft.com.au/ (click on the weather software button)

and this one:

http://www.zonetick.com/ (they have all sorts of different non standard
icons showing up)

both are completely different types of programs and both have non standard
"icons"

Nicholas Paldino [.NET/C# MVP] wrote:
Benny,

You can't do this. The icon has to be 16x16 I believe. No other
size is allowed.

Hope this helps.


Jan 5 '06 #6
Benny,
both are completely different types of programs and both have non
standard "icons"


I don't think those are icons at all, but rather windows parented in
the notification area beside the toolbar holding the regular icons. In
other words it's a hack and not something supported through any API.

Do you have to place your GUI thingy in the notification area?
Wouldn't a supported extensibility way such as a desk band be an
option?

http://msdn.microsoft.com/library/en..._adv/bands.asp
Mattias

--
Mattias Sjögren [C# MVP] mattias @ mvps.org
http://www.msjogren.net/dotnet/ | http://www.dotnetinterop.com
Please reply only to the newsgroup.
Jan 5 '06 #7
I was about to write a simular response - after taking a quick look
through the pinvoke website I still couldn't find a way of doing it. I
guess doing a bad would be a friendlier way of doing this, however I
wanted my item to work as if it was a notification icon but take up 2
spaces instead of the normal 1 space. Perhaps I'll look a little more
into how to actually get a control to show up in the notification area
then then give up in a few weeks ;)

~benny

Mattias Sjögren wrote:
Benny,

both are completely different types of programs and both have non
standard "icons"

I don't think those are icons at all, but rather windows parented in
the notification area beside the toolbar holding the regular icons. In
other words it's a hack and not something supported through any API.

Do you have to place your GUI thingy in the notification area?
Wouldn't a supported extensibility way such as a desk band be an
option?

http://msdn.microsoft.com/library/en..._adv/bands.asp
Mattias

Jan 5 '06 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
13577
by: Mats-Lennart Hansson | last post by:
Hi, I'm having a hard time getting my service to show a sys tray icon. I've tried to create a separate Windows application where I simply add a notification icon to the form. In the OnStart method of the service I simply try to start the windows application which then should show the icon. I can't get it to work! When I run the separate Windows application the icon turns up, but when I start it from the service it doesn't. How should I...
7
6905
by: Danielb | last post by:
I want my application to run most of the time as just an notify icon visible in the system tray, with some dialogs windows that open if the user selects an option from the context menu on the tray icon. I've had a look at the example on code project that creates an application that runs in the system tray: http://www.codeproject.com/csharp/desktop_mail_checker.asp So I copied how the above article sets up the main form: the form's...
4
7996
by: utkarsh | last post by:
Hi, I want to develop a Window Service in C# that should be capable of sisplaying the a icon in the window tray. Based on some logic in service, icon should be changed to some other color/image and I needed single click, double click event and context menu also on that tray icon to perform some other operation and show some window form.
5
3043
by: BJ | last post by:
I am trying to add my application to the system tray. I am not using the built in control becuase of the limitation that you can not use the balloon tool tip feature. I have done this succesfully in vb6 but when I try it in vb.net I get the system tray to work but there is no icon in the system tray. I know it is working because I can get the balloon tip to appear and where the icon is supposed to be there just isn't an icon. just a blank...
8
3387
by: george d lake | last post by:
Hi, I have an app that runs in the system tray. When I exit the app (from a button on a form) the app ends but the icon stays in the tray. Any ideas? here is the code I use to end the app Me.Close() Me.Hide()
3
1822
by: Stanley | last post by:
Hi all the helpful people out there! I want to dectect system tray so that when an icon is added to the tray, it will alert me! Just like the Printer icon appear with someone prints! Thanks in advance!
8
4550
by: Avi G | last post by:
Hi, i've created an application and i want it to be minimized to the sys tray, how i do it? if you can direct me step by step even with create a small application and put it in the sys tray Thanks
3
7944
by: Patrick Dugan | last post by:
I am using VS2005 (vb) and I have a program that starts when Windows boots up. Occasionally the icon that should appear in the system tray does not show up. The program is still running in memory but the tray icon is not there. If I start the program after Windows has booted up the icon shows every time. I am assuming that the reason is due to the icon being created before the system tray is loaded/running. I have used a timer with...
1
2172
by: =?iso-8859-1?B?S2VyZW0gR/xtcvxrY/w=?= | last post by:
Hi, how can i remove/disable the tray icon for the started Express Edition from the system tray. Te icon directs me to the express editons website after clicking on it. I dont want these tray icon. It will be shown for any Express Edition: C#,VB,VC++,... Thanks in advance,...
0
9576
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10323
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10311
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9138
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7613
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6847
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5516
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
4292
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3813
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.