WinForm 在 Alt+Tab 切换时 不显示
1 protected override CreateParams CreateParams
2 {
3 get
4 {
5 const int WS_EX_APPWINDOW = 0x00040000;
6 const int WS_EX_TOOLWINDOW = 0x00000080;
7
8 CreateParams result = base.CreateParams;
9 result.ExStyle = result.ExStyle & (~WS_EX_APPWINDOW);
10 result.ExStyle = result.ExStyle | WS_EX_TOOLWINDOW;
11 return result;
12 }
13 }
14
15
2 {
3 get
4 {
5 const int WS_EX_APPWINDOW = 0x00040000;
6 const int WS_EX_TOOLWINDOW = 0x00000080;
7
8 CreateParams result = base.CreateParams;
9 result.ExStyle = result.ExStyle & (~WS_EX_APPWINDOW);
10 result.ExStyle = result.ExStyle | WS_EX_TOOLWINDOW;
11 return result;
12 }
13 }
14
15
或者
1
2
3 public class FormHelper
4 {
5 [DllImport("user32.dll")]
6 private static extern
7 Int32 GetWindowLong(IntPtr hwnd, Int32 index);
8 [DllImport("user32.dll")]
9 private static extern
10 Int32 SetWindowLong(IntPtr hwnd, Int32 index, Int32 newValue);
11
12 private const
13 int GWL_EXSTYLE = (-20);
14 private const
15 int WS_EX_APPWINDOW = 0x00040000;
16 private const
17 int WS_EX_TOOLWINDOW = 0x00000080;
18
19 public static bool HideTabAltMenu(IntPtr hwnd)
20 {
21 bool result = true;
22 int exStyle = GetWindowLong(hwnd, GWL_EXSTYLE);
23 if (exStyle == 0)
24 {
25 result = false;
26 }
27 else
28 {
29 exStyle = exStyle & (~WS_EX_APPWINDOW);
30 exStyle = exStyle | WS_EX_TOOLWINDOW;
31 if (0 == SetWindowLong(hwnd, GWL_EXSTYLE, exStyle))
32 {
33 result = false;
34 }
35 }
36 return result;
37 }
38 }
39
40
2
3 public class FormHelper
4 {
5 [DllImport("user32.dll")]
6 private static extern
7 Int32 GetWindowLong(IntPtr hwnd, Int32 index);
8 [DllImport("user32.dll")]
9 private static extern
10 Int32 SetWindowLong(IntPtr hwnd, Int32 index, Int32 newValue);
11
12 private const
13 int GWL_EXSTYLE = (-20);
14 private const
15 int WS_EX_APPWINDOW = 0x00040000;
16 private const
17 int WS_EX_TOOLWINDOW = 0x00000080;
18
19 public static bool HideTabAltMenu(IntPtr hwnd)
20 {
21 bool result = true;
22 int exStyle = GetWindowLong(hwnd, GWL_EXSTYLE);
23 if (exStyle == 0)
24 {
25 result = false;
26 }
27 else
28 {
29 exStyle = exStyle & (~WS_EX_APPWINDOW);
30 exStyle = exStyle | WS_EX_TOOLWINDOW;
31 if (0 == SetWindowLong(hwnd, GWL_EXSTYLE, exStyle))
32 {
33 result = false;
34 }
35 }
36 return result;
37 }
38 }
39
40
然后再FormLoad的时候添加代码:
1 FormHelper.HideTabAltMenu(this.Handle);