C# - 独立ContextMenuStrip - 一些挫折

时间:2011-03-03 19:50:48

标签: c# contextmenu taskbar hotkeys contextmenustrip

我正在尝试创建一个基本上是ContextMenuStrip的程序,用户可以在其中添加自己的快捷方式,然后通过按热键组合来访问菜单。

我显示菜单的方式是给主窗体0%不透明度,但如果有其他方式,请告诉我。

我的愿望是制作这样的东西,只是更加可定制和用户友好: http://www.bullzip.com/products/exm/info.php

到目前为止,我遇到了一些问题: - 首次显示菜单时,一切正常,但当我再次尝试按热键时,会出现菜单,但任务栏中的“空白”窗口也是如此。 - 同样,当首次显示菜单时,一切都很好,但是当点击菜单上的任何地方时,它不会再次关闭。关闭它的唯一方法是从菜单中选择一些东西。

希望你们中的一些人能指出我的解决方案:)

提前谢谢!

1 个答案:

答案 0 :(得分:0)

Form.ShowInTaskbar = false;

Form.WindowState = FormWindowState.Minimized;

这应该为你隐藏表格。

然后使用以下方法捕获按键。

protected override bool ProcessCmdKey(ref Meassage msg, Keys keyData)
{
    if(keydata == whatever)
    {
        contextmenustrip.Show();
    }    

    return true; //false if you want to suppress the key press.
}