通过 GetWindowRect 可以得到一个窗口的位置和大小.
但能过getClientRect无法得到一个客户区的位置,只能得到大小 .
但SPY++得到了,他是如何做的呢?
http://upload.banzhu.net/User_UploadFiles/2010/7/19/201007192228332587.jpg
但能过getClientRect无法得到一个客户区的位置,只能得到大小 .
但SPY++得到了,他是如何做的呢?
http://upload.banzhu.net/User_UploadFiles/2010/7/19/201007192228332587.jpg
解决方案 »
- 开发Activex控件在模块中的fuction中如何定位用户控件?
- 请问!vb中怎么得到汉字的unicode编码
- 怎么总是“系统维护中,请稍后再试”,这里的全文检索不能用了吗?
- 100 分解決問題就給~!!!! 在綫等!!!在EXCEL中,我想點擊某個單元格,在同一個頁面中的另一個單元格中顯示這個單元格中的文字,怎
- sql语句问题!!
- 请问:用什么方法可以让SHELL(CALC.EXE)计算器永远在所有窗体之上(最好有代码)
- 删除随机文件的一条纪录?怎么做方便?
- 这是怎么回事?为什么会出现这样的问题?
- 入道请教?
- 电脑编程入门教程
- 为什么这段代码会越界?字符串数组的
- 求助:VB使用imagelist设计工具栏按钮,怎样修改按钮尺寸?
clienttoscreen hwnd,pslmsgbox "clientpoints is:" & psl.x & psl.ydim rct as rect
getclientrect hwnd,rct
rct.left = psl.x
rct.top =psl.ymsgbox "client rect is: " rct.left,rct.top,rct.width,rct.height
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function GetClientRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Private Declare Function ClientToScreen Lib "user32" (ByVal hwnd As Long, lpPoint As Long) As LongPrivate Sub Command1_Click()
Dim rcWin As RECT
Dim rcClient As RECT
GetWindowRect Me.hwnd, rcWin
GetClientRect Me.hwnd, rcClient
ClientToScreen Me.hwnd, rcClient.Left
Debug.Print "客户区在屏幕上的位置:", rcClient.Left, rcClient.Top
Debug.Print "客户区在窗口中的位置:", rcClient.Left - rcWin.Left, rcClient.Top - rcWin.Top
End Sub