none
[VB2008] 如何取得當前視窗(得到Focus)的hWnd? RRS feed

  • 問題

  • 請教各位高手
    如何取得當前視窗(例:你現在看的是你的瀏覽器,那是現在的當前視窗,等一下換到VS,那當前視窗就是VS)的hWnd?

    想了很久都找不到API可以用,請各位高手幫幫忙,感恩~
    2009年12月2日 上午 09:04

解答

  • hi
    嘗試看看(請再自行翻VB2008,感恩)
     [DllImport("user32.dll")]
     static extern Int32 GetForegroundWindow();

    private void Form1_Load(object sender, EventArgs e)
            {
                timer1.Start();
            }

    private void timer1_Tick(object sender, EventArgs e)
            {
                GetCurrentWindow();
            }

    private void GetCurrentWindow()
            {          
                Int32 handle = 0;         
                handle = GetForegroundWindow();
                if (handle > 0)
                {
                    textBox1.Text = handle.ToString();
                }
            }
    http://www.dotblogs.com.tw/ricochen/Default.aspx
    2009年12月2日 下午 12:13

所有回覆

  • SEE
    Cmf.Net (C) 2009
    2009年12月2日 上午 09:26
  • hi
    嘗試看看(請再自行翻VB2008,感恩)
     [DllImport("user32.dll")]
     static extern Int32 GetForegroundWindow();

    private void Form1_Load(object sender, EventArgs e)
            {
                timer1.Start();
            }

    private void timer1_Tick(object sender, EventArgs e)
            {
                GetCurrentWindow();
            }

    private void GetCurrentWindow()
            {          
                Int32 handle = 0;         
                handle = GetForegroundWindow();
                if (handle > 0)
                {
                    textBox1.Text = handle.ToString();
                }
            }
    http://www.dotblogs.com.tw/ricochen/Default.aspx
    2009年12月2日 下午 12:13