PDA

View Full Version : کمک برای کبی



alborz2
جمعه 06 مهر 1386, 15:47 عصر
اگه هر وقت با موس یک کلمه رو انتخاب کنم اون کلمه توی یک تکست کبی بشه:متفکر:


اینو باید ذکر کنم که با موس می خوام نه کیبورت
اینم بگم که کد کیبورت و دارم


اینم کدش


Private Declare Function GetKeyState Lib "user32.dll" (ByVal nVirtKey As Long) As Integer

Private Sub Timer1_Timer()
Dim keystate As Integer
Dim keystate1 As Integer
keystate = GetKeyState(vbKeyL)
keystate1 = GetKeyState(vbKeyControl)
If keystate And keystate1 And &H8000 Then
SendKeys "^{c}", True
Form1.Visible = True
Form1.Text1.SetFocus
Form1.Text1.Text = ""
Form1.Text1.SelText = Clipboard.GetText
End If
End Sub

__siavash__
جمعه 06 مهر 1386, 16:24 عصر
دو تکست باکس رو فرم بذار
بعد که هر چی که توی اولی انتخاب کنی تو دومی نمایش داده میشه !


Private Sub Text1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Text2.Text = Text1.SelText
End Sub

alborz2
یک شنبه 08 مهر 1386, 22:12 عصر
دستت درد نکنه ولی کلمه خارج از بر نامه رو می خوام انتخاب بشه اگه میشه توضیح بدید

__siavash__
دوشنبه 09 مهر 1386, 11:47 صبح
به کمک این توابع و ثابت ها شاید بتونی این کارو بکنی ؟


Public Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Public Declare Function SendMessageLong& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long)
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Const WM_COPY = &H301
Public Const WM_PASTE = &H302
Public Const EM_SETPASSWORDCHAR = &HCC
Public Const WM_GETTEXT = &HD
Public Const EM_SETSEL = &HB1
Public Const WM_CLEAR = &H303

alborz2
دوشنبه 09 مهر 1386, 17:19 عصر
دستت درد نکنه اگه میشه یکم توضیح بدی بد نیست

__siavash__
سه شنبه 10 مهر 1386, 00:07 صبح
من دقیقا نمیدونم میخوای چه کار کنی ! اگه میخوای مثل اون حالتی که کلمه روی فرمت هست وقتی انتخاب میکنی همون لحظه توی یه تکست باکسه دیگه دیده بشه فکر میکنم باید از Hook استفاده کنی که Hook Type رو هم روی حالت WH_MOUSE بذاری که البته کار راحتی نیست !من هم تجربه این کارو نداشتم
در مورد توابع SendMessage
پارامتر اول: هندل اون پنجره ای که میخوای متنشو بخونی پیدا میکنی ( با FindWindow و FindWindowEX ) پیدا میشه
پارامتر دوم نوع پیام هست که میخوای بفرستی با پیام WM_COPY متن سلکت شده کپی میشه تو حافظه
پارامتر سوم و چهرم رو هم صفر بذار
البته این کار بیشتر برای وقتی که شما میدونی متن چه تکست باکی رو میخوای بخونی کاربرد داره

alborz2
سه شنبه 10 مهر 1386, 19:18 عصر
آقا می خوام مثل یک دیکشنری عمل کنه وقتی با موس روی کلمه کلیک کنم واونو انتخاب کنم اون کلمه کبی بشه توی تکسباس

اگه مثالی هم هست توی اینجا ابلود کنید

__siavash__
سه شنبه 10 مهر 1386, 19:39 عصر
آقا می خوام مثل یک دیکشنری عمل کنه وقتی با موس روی کلمه کلیک کنم واونو انتخاب کنم اون کلمه کبی بشه توی تکسباس

اگه مثالی هم هست توی اینجا ابلود کنید
یعنی میخوای مثل بابیلون عمل کنه !
فعلا که سورسی تو این مایه ها ندارم اگه گیرم اومد برات میذارم !