ورود

View Full Version : سوال: تشخیص متن انتخاب شده در هرجای ویندوز



aliman12
جمعه 12 خرداد 1391, 14:54 عصر
با سلام خدمت شما عزیزان
سئوال داشتم که چجوری میشه متنی که درگ میشه رو بفهمیم که چیه
دقت داشته باشید که منظورم کپی کردن در کلیپبورد نیست میخوام به محض اینکه متن سلکت شد برنامه اونو تشخیص بده و بتونیم ازش استفاده کنیم
این متن میتونه در هر جایی باشه مثلا : نوت پد - مرورگرها - برنامه های ویراستار - فایل پی دی اف و...
درست مثل کاری که بعضی از دیکشنری ها انجام میدن
قبلا از راهنمایی هاتون کمال تشکر و قدردانی را به جا می آورم

just4froum
جمعه 12 خرداد 1391, 18:40 عصر
فکر کنم تنها راهش این باشه

1- بعد از هر بار فشرده شدن کلید موس کلیپبورد ذخیره شود.
2- کلید های ترکیبی ctrl + c توسط برنامه به صورت مجازی فشرده شود.
3- چک شود که کلیپبورد تغییر کرده یا نه ؟ اگر آری چک شود که کلیپبورد شبیه متن است یا خیر ؟ اگر بود :
4- عملیات مورد نظر بر روی متن انجام شود ضمن این که کلیپبورد ذخیره شده دوباره به جای خود باز گردد.

aliman12
جمعه 12 خرداد 1391, 19:07 عصر
با تشکر از راهنمایی صحیح شما
در صورت امکان بگویید که چطور بفهمم کلیک چپ ماوس فشرده شده و چطور کلیدهای کنترل سی را ارسال کنم
ممنون و متشکر

just4froum
جمعه 12 خرداد 1391, 19:56 عصر
با تشکر از راهنمایی صحیح شما

برای تشکر همان دکمه ی تشکر کردن را بزنید کافیست . در ضمن خودم الان دیدم که زیادم صحیح نبود.:ناراحت:

برای اطلاعات بیشتر : برای فهمیدن کلیک چپ موسک

Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Private Sub Form_Load()
Timer1.Interval = 1
Timer1.Enabled = True
End Sub

Private Sub Timer1_Timer()
If GetAsyncKeyState(vbKeyLButton) = -32767 Then
MsgBox "Left Button Press", vbInformation
End If
End Sub

اینم برای فشردن ctrl + c

SendKeys "^C"

اما اگه بابت هر کلید چپی که موس می زنه دکمه های ctrl + c فشرده بشه مشکلات زیادی پیش میاد .
اما اگه راه دیگری به ذهنم زد همینجا اعلام می کنم.