91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

怎么使messagebox彈出后不獲取窗口焦點

小億
222
2023-08-07 20:00:44
欄目: 編程語言

要使MessageBox彈出后不獲取窗口焦點,可以通過以下兩種方法實現:

  1. 使用MessageBoxOptions參數:
MessageBox.Show("Message", "Title", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.NoFocus);

這里的MessageBoxOptions參數中的NoFocus選項可以阻止MessageBox獲取焦點。

  1. 使用Win32 API函數設置窗口樣式:
using System.Runtime.InteropServices;
public class MessageBoxHelper
{
[DllImport("user32.dll")]
public static extern IntPtr GetActiveWindow();
[DllImport("user32.dll")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
[DllImport("user32.dll")]
public static extern int MessageBox(IntPtr hWnd, string text, string caption, int type);
public static void Show(string message, string caption)
{
IntPtr activeWindow = GetActiveWindow();
MessageBox(activeWindow, message, caption, 0);
SetForegroundWindow(activeWindow);
}
}

這里的MessageBoxHelper類使用了GetActiveWindow和SetForegroundWindow函數來獲取和恢復焦點。然后通過MessageBox函數彈出消息框,并在彈出后恢復焦點到之前的窗口。

使用這兩種方法中的任一種都可以實現MessageBox彈出后不獲取窗口焦點。

0
潢川县| 西吉县| 奉化市| 和顺县| 汪清县| 伊宁市| 安丘市| 湘潭县| 凌海市| 剑河县| 光山县| 威信县| 淮南市| 铜梁县| 象山县| 大埔县| 乌恰县| 兰西县| 会昌县| 香格里拉县| 虎林市| 泰安市| 建始县| 阳春市| 邵阳市| 富源县| 宜州市| 柳江县| 辰溪县| 江安县| 乐山市| 浦江县| 津南区| 波密县| 泰宁县| 壶关县| 南江县| 宿松县| 清涧县| 丽水市| 稻城县|