Tag: 托盘

C#靠近托盘(如msn messenger)

我有#.net应用程序。 所以我创建了一个位于托盘中的notifyIcon。 我想要做的是当用户点击表单上的“x”按钮时,我希望它靠近托盘。 他们应该只能使用托盘图标中的上下文菜单退出程序。 所以我做的是,在表单关闭事件中,我检查表单是否可见。 如果它可见,我将它设置为不可见并将showInTaskbar设置为false(模拟最小化到托盘)如果表单已经不可见,那么它们可能正在从托盘中关闭它,所以我将在这种情况下退出程序。 但是,我遇到的问题是,如果窗口是可见的,但是他们右键单击托盘图标的上下文菜单并点击退出,我需要退出程序而不是最小化。 我该如何解决这个问题?

使用PInvoke声明实现代码示例时遇到问题

我在这里引用了以下线程来解答我的问题: 从系统托盘中的图标获取工具提示文本 我基本上想要做与OP相同的事情,但与响应此线程的其他一些用户不同,我在添加缺少的代码示例中未明确定义的PInvoke声明后,无法使代码工作。 我组装了一个类文件,试图将所有内容放在一起,我引用了PInvoke.net的声明(我不确定这是用户michalczerwinski所做的,或者他是否正在使用某种PInvoke库)。 这是我到目前为止所拥有的: using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Runtime.ConstrainedExecution; using System.Runtime.InteropServices; using System.Security; using System.Text; using System.Threading.Tasks; namespace Example { public static class TrayTooltip { [Flags] public enum ProcessAccessFlags : uint { All = 0x001F0FFF, Terminate = 0x00000001, CreateThread = 0x00000002, VirtualMemoryOperation = 0x00000008, VirtualMemoryRead = 0x00000010, VirtualMemoryWrite = […]