1. Overview A tray icon (officially known as a Notify Icon ) is an icon displayed in the notification area of the Windows taskbar. Located typically on the right side of the taskbar (near the system clock), it allows applications to provide status information, background process control, and quick access to common functions without requiring an open main window.
In Windows 11, the notification area is still fully supported, but third-party apps should migrate from balloon notifications to Windows Toast Notifications (via ToastNotificationManager ). 7. Cross-Language Support | Language/Framework | Typical API | |--------------------|--------------| | C++ (Win32) | Shell_NotifyIcon directly | | C# (.NET) | NotifyIcon class in System.Windows.Forms | | Python | pystray library or win32api via pywin32 | | Electron | Tray module (built on native OS APIs) | | Qt | QSystemTrayIcon class | Example (C# .NET) NotifyIcon ni = new NotifyIcon(); ni.Icon = new Icon("app.ico"); ni.Text = "My Background App"; ni.ContextMenuStrip = new ContextMenuStrip(); ni.ContextMenuStrip.Items.Add("Exit", null, (s, e) => Application.Exit()); ni.Visible = true; 8. Summary Table | Aspect | Details | |--------|---------| | Official name | Notification area icon (Notify Icon) | | Primary API | Shell_NotifyIcon + NOTIFYICONDATA | | Key responsibility | Background process control & status | | Max icons (system) | No hard limit (limited by taskbar width) | | User override | Yes — via “Taskbar settings” → system tray | This write-up covers everything from end-user interaction to low-level implementation, suitable for both general readers and Windows developers. tray icon windows