要求在程式啟動的時候主視窗隱藏,只在系統托盤裡顯示乙個圖示。一直以來採用的方法都是設定視窗的showintaskbar=false, windowstate=minimized。但是偶然發現儘管這樣的方法可以使主視窗隱藏不見,但是在用alt+tab的時候卻可以看見這個程式的圖示並把這個視窗顯示出來。因此這種方法其實並不能滿足要求。
方法一: 重寫setvisiblecore方法
protected override void setvisiblecore(bool )
方法二: 不建立主視窗,直接建立notifyicon和contextmenu元件
這種方法比較麻煩,很多**都必須手工寫
system.resources.resourcemanager resources =
new system.resources.resourcemanager("myresource", system.reflection.assembly.getexecutingassembly());
notifyicon ni = new notifyicon();
ni.balloontipicon = system.windows.forms.tooltipicon.warning;
ni.balloontiptext = "test!";
ni.balloontiptitle = "test.";
//ni.contextmenustrip = contextmenu;
ni.icon = ((system.drawing.icon)(resources.getobject("ni.icon")));
ni.text = "test";
ni.visible = true;
ni.mouseclick += delegate(object sender, mouseeventargs e)
;方法三:前面兩種方法都有乙個問題,主視窗不能再顯示出來。現在這種方法就沒有這個問題了
private bool windowcreate=true;
...protected override void onactivated(eventargs e)
base.onactivated(e);
}private void notifyicon1_doubleclick(object sender, eventargs e)
else
C 隱藏視窗的幾種方法
要求在程式啟動的時候主視窗隱藏,只在系統托盤裡顯示乙個圖示。一直以來採用的方法都是設定視窗的showintaskbar false,windowstate minimized。但是偶然發現儘管這樣的方法可以使主視窗隱藏不見,但是在用alt tab的時候卻可以看見這個程式的圖示並把這個視窗顯示出來。因...
隱藏DOS視窗 的方法
隱藏dos視窗 隱藏批處理視窗,隱藏命令列 的方法 網上有些別的方法比如指令碼什麼的,太麻煩了,就是想隱藏視窗,怎麼辦簡單?使用只有1k的第三方工具。hidecon 是加在批處理內第一行的。hideexec 則相當於是個外殼,用來啟動dos命令的。例子 hidecon用法.bat echo off ...
C 登入視窗與主視窗
程式入口 using system using system.collections.generic using system.windows.forms namespace huiyi 主視窗的 using system using system.collections.generic using...