如何获得一个控件或窗体的句柄 (HWND)?
实际上有几种使用 P/Invoke 的方法可以访问控件的 HWND 句柄。下面显示了其中两种方法,一种使用 GetCapture,另一种使用 FindWindow。
[DllImport("coredll.dll"]
public static extern IntPtr GetCapture();
[DllImport("coredll.dll")]
public static extern IntPtr FindWindow(String lpClassName, String lpWindowName);
//----下面的this的基类为Control----
// 方法1
this.Text = "FindMe";
IntPtr hwnd1 = FindWindow(null, "FindMe");
// 方法2
this.Capture = true;
IntPtr hwnd2 = GetCapture();
this.Capture = false;
public static extern IntPtr GetCapture();
[DllImport("coredll.dll")]
public static extern IntPtr FindWindow(String lpClassName, String lpWindowName);
//----下面的this的基类为Control----
// 方法1
this.Text = "FindMe";
IntPtr hwnd1 = FindWindow(null, "FindMe");
// 方法2
this.Capture = true;
IntPtr hwnd2 = GetCapture();
this.Capture = false;
参考:
http://www.pocketpcdn.com/articles/dotnetcf_hwnd.html
http://msdn.microsoft.com/zh-cn/library/aa497275.aspx
--------------------------------------------------
李森 – listen |
声明: Announce: |
posted on 2009-09-16 20:02 listenlisten 阅读(2543) 评论(0) 编辑 收藏 举报