Winform çªå£æä¸ä¸ªå±æ§ï¼TopMostï¼è¡¨ç¤ºè¯¥çªä½æ¯å¦å§ç»æ¾ç¤ºå¨æ¤å±æ§æªè®¾ç½®ä¸º true çææå ¶ä»çªä½ä¹ä¸ï¼
æçç解就æ¯ï¼å¦æä¸ä¸ª Winform é¡¹ç®æå¤ä¸ªçªä½ï¼å ¶ä¸æä¸ä¸ªçªä½ç TopMost 屿§è®¾ä¸º true äºï¼èå ¶ä»çªä½ç TopMost æªè®¾ç½®ä¸º trueï¼é£ä¹ TopMost 屿§ä¸º true ççªä½å°±ä¼æ¾ç¤ºå¨å ¶ä»çªä½ä¹ä¸ï¼
åå 天项ç®ä¸éå°ä¸ä¸ªé®é¢ï¼æææè®¾ç½®äºçªä½ç TopMost 屿§ä¸º trueï¼è¿æ¯æ æ³æ¾ç¤ºå¨æä¸å±ï¼
忥ç»è¿å夿µè¯ï¼åç°ä¸ä¸ªæ åµï¼å¦ææåªå¨çªä½å±æ§æ ä¸è®¾ç½® TopMost 为 trueï¼çªä½æ æ³ç½®é¡¶æ¾ç¤ºï¼

å¦ææ²¡ææçªä½å±æ§æ ä¸ç TopMost 设置为 trueï¼é»è®¤ä¸º falseï¼ï¼èæ¯å¨çªä½ç Load äºä»¶ä¸ç¨ä»£ç æå® TopMost=trueï¼ä¹æ æ³ç½®é¡¶æ¾ç¤ºï¼
使¯ï¼å½æåæ¶å¨çªä½å±æ§æ ä¸è®¾ç½® TopMost 为 trueï¼ä¹å¨ load äºä»¶éç¨ä»£ç æå® TopMost=trueï¼å°±å¯ä»¥å°çªä½ç½®é¡¶æ¾ç¤ºã
Â
Â
使¯ï¼åæ¥æåç¨è¿ç§æ¹å¼ç½®é¡¶çªä½ï¼åç°åä¸çµäºã
å¨ç½ä¸æ¥äºåç§èµæï¼æèªå·±ä¹æµè¯äºåç§æ åµï¼æååç°ï¼å½ææçªä½ç ShowInTaskbar 屿§è®¾ç½®ä¸º falseï¼åå¯ä»¥ç½®é¡¶äºã
ä¹å°±æ¯æ ShowInTaskbar 屿§è®¾ç½®ä¸º falseï¼æ TopMost 屿§è®¾ç½®ä¸º trueï¼ä¹å¨ load æ¹æ³éç¨ä»£ç æå® TopMost=trueï¼ä¸ä¸ªæ¡ä»¶ä¸èµ·æ»¡è¶³çæ åµä¸ï¼çªä½åå¯ä»¥ç½®é¡¶äºã
Â
Â
å¨ç½ä¸è¿æ¥å°å¦ä¸ç§ä½¿ç¨ç³»ç»å¨æåºçæ¹æ³ç½®é¡¶çªä½ï¼ä¸ç¨æ ShowInTaskbar 屿§è®¾ç½®ä¸º falseï¼ï¼
æçªä½ç TopMost 屿§è®¾ç½®ä¸º trueï¼åæ¶å¨ä»£ç éå å¦ä¸å 容ï¼
// 设置æ¤çªä½ä¸ºæ´»å¨çªä½ï¼
// å°å建æå®çªå£ç线ç¨å¸¦å°åå°å¹¶æ¿æ´»è¯¥çªå£ãé®çè¾å
¥ç´æ¥æåçªå£ï¼å¹¶ä¸ºç¨æ·æ´æ¹åç§è§è§æç¤ºã
// ç³»ç»ä¸ºå建åå°çªå£ç线ç¨åé
çä¼å
级ç¥é«äºå
¶ä»çº¿ç¨ã
[DllImport("user32.dll", EntryPoint = "SetForegroundWindow")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
// 设置æ¤çªä½ä¸ºæ´»å¨çªä½ï¼
// æ¿æ´»çªå£ãçªå£å¿
é¡»éå å°è°ç¨çº¿ç¨çæ¶æ¯éåã
[DllImport("user32.dll", EntryPoint = "SetActiveWindow")]
public static extern IntPtr SetActiveWindow(IntPtr hWnd);
// 设置çªä½ä½ç½®
[DllImport("user32.dll", CharSet = CharSet.Auto)]
private static extern int SetWindowPos(IntPtr hWnd, int hWndInsertAfter, int x, int y, int Width, int Height, int flags);
private void Form2_Load(object sender, EventArgs e)
{
// 设置çªä½æ¾ç¤ºå¨æä¸å±
SetWindowPos(this.Handle, -1, 0, 0, 0, 0, 0x0001 | 0x0002 | 0x0010 | 0x0080);
// 设置æ¬çªä½ä¸ºæ´»å¨çªä½
SetActiveWindow(this.Handle);
SetForegroundWindow(this.Handle);
// 设置çªä½ç½®é¡¶
this.TopMost = true;
}
Â