C#SetWindowPos窗口置頂

字號(hào):


    [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);
    /// <summary>
    /// 得到當(dāng)前活動(dòng)的窗口
    /// </summary>
    /// <returns></returns>
    [DllImport("user32.dll", CharSet = CharSet.Auto)]
    private static extern System.IntPtr GetForegroundWindow();
    哪個(gè)窗體想要置頂,在Form_Load中加上
    SetWindowPos(this.Handle, -1, 0, 0, 0, 0, 1 | 2); //最后參數(shù)也有用1 | 4 
    具體說(shuō)明,看API函數(shù)說(shuō)明
    如果是用點(diǎn)擊一個(gè)按鈕后彈出新窗體,并置頂,則:
    Form2 frm = new Form2();
    frm.Show();
    SetWindowPos(GetForegroundWindow(), -1, 0, 0, 0, 0, 1 | 2);