標籤:des style blog http java color
方法一:
//調用API[System.Runtime.InteropServices.DllImport("user32", CharSet = System.Runtime.InteropServices.CharSet.Auto, ExactSpelling = true)]public static extern IntPtr GetFocus(); //獲得本表單的控制代碼[System.Runtime.InteropServices.DllImport("user32", EntryPoint = "SetForegroundWindow")]public static extern bool SetFocus(IntPtr hWnd);//設定此表單為活動表單// 定義變數,控制代碼類型public IntPtr han;private void Form1_Load(object sender, EventArgs e){//在表單載入的時候給變數賦值,即將當前表單的控制代碼賦給變數han = this.Handle;}private void timer1_Tick(object sender, EventArgs e){// 載入一個定時器控制項,驗證當前WINDOWS控制代碼是否和本表單的控制代碼一樣,如果不一樣,則啟用本表單if (han != GetFocus()){SetFocus(han);}this.WindowState = FormWindowState.Normal;}
方法二:
[System.Runtime.InteropServices.DllImport("user32")]private static extern IntPtr GetActiveWindow();//擷取當前表單的活動狀態// 判斷當前視窗是否處於活動狀態的方法private bool ThisIsActive(){ return (GetActiveWindow() == this.Handle);}private void timer1_Tick(object sender, EventArgs e){if (!ThisIsActive()){this.Activate();}this.WindowState = FormWindowState.Normal;}
方法三
[DllImport("user32")] private static extern IntPtr FindWindow(string lpClassName,string lpWindowName); [DllImport("user32")] private static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent); //在表單On_Load事件中添加(Santos的代碼): IntPtr hDeskTop=FindWindow("Progman", "Program Manager"); SetParent(this.Handle,hDeskTop);