我正在开发一个无边框形式的托盘应用程序,该应用程序在后台运行。 如果用户想要执行不同的操作,他们可以通过右键单击托盘图标(NotifyIcon)来打开上下文菜单。从ALT + TAB菜单中隐藏无边界窗口
所以我的要求是:
一,应用总是以最小化模式和任务栏图标将非常具有显示。
2.应用程序不应出现在任务栏上。
3.应用程序不应从ALT + TAB菜单中可见。
我已经实现了上述两个要求,但试图从ALT + Tab菜单中隐藏应用程序,它正在工作(不能从ALT + TAB中看到),但是它在应用程序标题左上角创建了一个小的边缘窗口如下图所示:
我想删除那个小的边缘窗口。
这里是我的代码:
public Form1()
{
InitializeComponent();
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
HideThisForm();
}
protected override CreateParams CreateParams
{
get
{
// Turn on WS_EX_TOOLWINDOW style bit
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x80;
return cp;
}
}
private void HideThisForm()
{
this.ShowInTaskbar = false;
this.WindowState = FormWindowState.Minimized;
this.Hide();
notifyApp.Visible = true;
notifyApp.ShowBalloonTip(2000, "BackgroundApp",
"This APP is running @ Background", ToolTipIcon.Info);
}
P.S:我已经通过StackOverflow的几个类似的帖子走了,但他们没有面临类似的问题。
是通过设置'this.Opacity = 0;'使边缘窗口不可见,但是我应该在何时更改不透明度以使其可见。 – 2014-12-09 12:36:31
@SudhakarTillapudi - 我的印象是你从来不需要看你的表格,你只需要一个托盘菜单。 – 2014-12-09 12:38:43
有效点,但作为其中一个上下文菜单选项,我必须打开Window.i,通过在contextmenuitem_click事件中更改不透明度(设置为100)来解决问题,请允许我尝试。谢谢 – 2014-12-09 12:46:37