ايران ويج

نسخه‌ی کامل: کمک فوری در مورد تایمر
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3
Payman62 نوشته است:
lord_viper نوشته است:در مورد hook یا timer thread?
اگه در مورد hook میخواهی جناب peyman62 یه مقاله تو بخش visual basic نوشتن میتونی ازش استفاده کنی
سلام.
اون مقاله عالی و کامل کار پدرام جان بود.

دوست عزیز شما چرا از هوک استفاده نمیکنی؟
با سلام
دوست من اگه شما یه سورس آماده از هوک دارین بزارین اینجا فقط می خوام یه طوری باشه که کار این تایمر نیازی به فوکوس روی فرم نداشته باشه که مثلا اگه از روش برم جای دیگه از کار باسته
متشکرم
timer هم نیازی به فوکوس نداره
if GetAsyncKeyState(50)=-32767 then
begin
memo1.Text:=memo1.Text+'2';
end;
به این کد نگاه کن این کد میگه هر وقت کلید فشرده شده توسط keyboard مقدارش 50 کهمیشه(2) بود داخل memo بنویس 2
تابع GetAsyncKeyState براش فوکوس مهم نیست بلکه فشرده شدن کلیدی رو نشون میده
lord_viper نوشته است:timer هم نیازی به فوکوس نداره
if GetAsyncKeyState(50)=-32767 then
begin
memo1.Text:=memo1.Text+'2';
end;
به این کد نگاه کن این کد میگه هر وقت کلید فشرده شده توسط keyboard مقدارش 50 کهمیشه(2) بود داخل memo بنویس 2
تابع GetAsyncKeyState براش فوکوس مهم نیست بلکه فشرده شدن کلیدی رو نشون میده

سلام دوست من
من کاملا متوجه مطلب هستم ولی شما متوجه منظور م نشدین من این چند خط کد رو باید درون یه تایمر قرار بدم تا اینجا درست و کاملا هم حق با شما هست ولی مشکل اینجا هست که من می خوام به جای تایمر از یه چیزی دیگه استفاده کنم که هم سرعتش خیلی بیشتر باشه که در نتیجه حساس تر میشه و هم مثل تایمر که محدود نیست نسبت به فوکوس اوونم محدود نباشه
در اینجا یادم نره
در اینجا من یه کدی نوشتم که فقط با حلقه ها کار میکنه
و بدی این برنامه این است که خیلی از توان سی پی یو میگیره
اینم سورسش
Private Sub Command1_Click()
'Form1.Hide
Dim strTotal, strLetter As String

filenum = FreeFile
Open "amin.txt" For Output As #filenum
Close #filenum
strLetter = ""
strLetter = ""
Text1.Text = ""

For j = 0 To 1
'**************************************
در اینجا برنامه ای که می خواهید مرتب تکرار شود رو میزاریم

'**************************************
Text2.Text = j
If j = 1 Then
j = -1
End If
DoEvents

Next j
End Sub

من نمی خوام را جع به این برنامه حرفی زده بشه فقط اگه ممکنه همون GetAsyncKeyState رو با هوک برام نمایش بدبن که خارج از میلی ثانیه باشد
آقا اگه میشه زودتر مرسی
خب فکر نکنم تایمر به فوکوس حساس باشه(تو دلفی که اینجوریه)از تایمر حساس تر thread timer هست که تو اینجاها استفاده نمیشه (اگه سایکل زمانیش رو بالا ببرین و کاربر یه مقدار دیر دستش رو از رو دکمه keyboard برداره برنامه فکر میکنه اون دکمه 2 بار زده شده)بهترین کار استفاده از hook هست(تو msdn در موردش کامل توضیح داده)
دوست من اگه ت سایت جایی هست که راجع به این مطلب کامل توضیح داده شده ممنون میشم
صفحه‌ها: 1 2 3