Module Code: Option ExplicitPublic Declare Function WindowFromPoint Lib "user32" (ByVal X As Long, ByVal y As Long) As Long Public Declare Function GetParent Lib "user32" (ByVal hwnd As Long) As Long Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As LongPublic Type POINTAPI X As Long y As Long End TypePublic Type DGfor3 ponX As Long ponY As Long MDC As Long End TypePublic Function MouseDC() As DGfor3 On Error Resume Next Dim Cur As POINTAPI GetCursorPos Cur MouseDC.MDC = WindowFromPoint(Cur.X, Cur.y) MouseDC.ponX = Cur.X MouseDC.ponY = Cur.y End Function ------------------------------------------------------------- Public Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As LongPublic Function CName(ByVal ChWnd As Long) As String CName = Space(85) GetClassName ChWnd, CName, Len(CName) End Function'shell 'String=Cname(hWnd) --------------------------------------------------Form Code: Option ExplicitPrivate Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Any) As LongPrivate Const WM_GETTEXT = &HDDim Gtxt As String Dim GSize As LongPrivate Sub Timer1_Timer()
Timer控件加了吧,我这是一个工程,写的程序我也在用,你再看看吧。 它的属性=Timer1.Interval = 1 Public Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long 把上面的API加进去。
Option ExplicitPublic Declare Function WindowFromPoint Lib "user32" (ByVal X As Long, ByVal y As Long) As Long
Public Declare Function GetParent Lib "user32" (ByVal hwnd As Long) As Long
Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As LongPublic Type POINTAPI
X As Long
y As Long
End TypePublic Type DGfor3
ponX As Long
ponY As Long
MDC As Long
End TypePublic Function MouseDC() As DGfor3
On Error Resume Next
Dim Cur As POINTAPI
GetCursorPos Cur
MouseDC.MDC = WindowFromPoint(Cur.X, Cur.y)
MouseDC.ponX = Cur.X
MouseDC.ponY = Cur.y
End Function
-------------------------------------------------------------
Public Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As LongPublic Function CName(ByVal ChWnd As Long) As String
CName = Space(85)
GetClassName ChWnd, CName, Len(CName)
End Function'shell
'String=Cname(hWnd)
--------------------------------------------------Form Code:
Option ExplicitPrivate Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Any) As LongPrivate Const WM_GETTEXT = &HDDim Gtxt As String
Dim GSize As LongPrivate Sub Timer1_Timer()
Gtxt = Space(255)
GSize = Len(Gtxt)
SendMessage MouseDC.MDC, WM_GETTEXT, GSize, Gtxt
Text1.text = Gtxt
Text2.text = MouseDC.MDC GetWindowThreadProcessId MouseDC.MDC, GSize
Text3.text = "Proc:" & Hex(GSize)
Text4.text = "X:" & MouseDC.ponX & "Y:" & MouseDC.ponY
Text5.text = "Len:" & Len(lblTxt)
Text6.text = CName(MouseDC.MDC)
End Sub
'Text1=文本
'Text2=句柄
'Text3=进程名
'Text4=Mouse的坐标
'Text5=类名
'Text6
'Text5=文本长度
'Text6=类名
CName返回的是控件的类名
请再给小弟指导一下!
它的属性=Timer1.Interval = 1
Public Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long
把上面的API加进去。