ورود

نسخه کامل مشاهده نسخه کامل : گرفتن یک متن خارج از فرم



ali_reza_761
07-01-2007, 14:46
با سلام
من میخوام یک متن رو خارج از فرمم با وی بی بگیرم . مثل دیکشنری بابی لون که با بردن موس و کلیک وسط متن رو های لایت میکنه و میخونه یا کلمرو.

ممنون میشم کمک کنید .

mehrdad-xvc
07-01-2007, 23:45
سلام.
علی اقا فعلا این برنامه را داشته باش .این برنامه مشخص میکنه که ماوس شما اکنون بر روی چه عنصری و چه محلی هست

توابع API :






Option Explicit



Private Declare Function GetCursorPos Lib "user32" _

(lpPoint As POINTAPI) As Long



Private Declare Function WindowFromPoint Lib "user32" (ByVal _

xpoint As Long, ByVal ypoint As Long) As Long



Private Declare Function GetClassName Lib "user32" Alias _

"GetClassNameA" (ByVal hwnd As Long, ByVal lpClass _

As String, ByVal nMaxCount As Long) As Long



Private Type POINTAPI

X As Long

Y As Long

End Type



Private gStop As Boolean

Private prevWindow As Long, curWindow As Long

Private X As Long, Y As Long

Private className As String

Private retValue As Long

Private mousePT As POINTAPI





یک تایمر و لیبل ایجاد کن






Private Sub Timer1_Timer()



gStop = False

prevWindow = 0

Do

If gStop = True Then Exit Do

Call GetCursorPos(mousePT)

X = mousePT.X

Y = mousePT.Y

curWindow = WindowFromPoint(X, Y)

If curWindow <> prevWindow Then

className = String$(256, " ")

prevWindow = curWindow

retValue = GetClassName(curWindow, className, 255)

className = Left$(className, InStr(className, _

vbNullChar) - 1)

If className = "SysListView32" Then

Label1.Caption = "the mouse is over the desktop. "

Else

Label1.Caption = "the mouse is over " & className

End If

End If

DoEvents

Loop

End Sub


این برنامه حتی کد منو ها و زیر منو ها رو هم بدست میاره
علی اقا فکر کنم حالا دیگه خودت بتونی که از این برنامه ایده بگری و بتئنی برنامه را بنویسی !!
من راه را به شما نشان دادم . اگه جایی از برنامه ای که نوشتی را مشکل داشتی من در خدمتم
(چکار کنم از sa3er میترسم!!:blink: :biggrin: )