gpt4 book ai didi

C# 接近托盘(如 msn messenger)

转载 作者:太空狗 更新时间:2023-10-29 23:35:01 24 4
gpt4 key购买 nike

我有一个 c# .net 应用程序。所以我创建了一个位于托盘中的 notifyIcon。我想要做的是当用户点击表单上的“x”按钮时,我希望它靠近托盘。他们应该只能使用托盘图标中的上下文菜单退出程序。

所以我所做的是,在表单关闭事件中,我检查表单是否可见。如果它可见,我将其设置为不可见并将 showInTaskbar 设置为 false(模拟最小化到托盘)如果表单已经不可见,那么他们可能正在将其从托盘中关闭,所以在这种情况下我将退出程序。

但是,我遇到的问题是,如果窗口可见,但他们右键单击托盘图标的上下文菜单并点击退出,我需要退出程序而不是最小化。

我该如何解决这个问题?

最佳答案

试试这个:

bool _closingFromMenu;

void NOTIFYICON_EXIT_MENU_HANDLER(object sender, EventArgs e)
{
_closingFromMenu = true;
Close();
}

//form closing handler
FormClosing +=(a,b) =>{
if(_closingFromMenu){
Close();
}
else{
e.Cancel = true;
//do minimize stuff;
}
}

或者如果您只有一个表单,您可以在上下文菜单项处理程序中调用 Application.Exit();

关于C# 接近托盘(如 msn messenger),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3349709/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com