PDA

View Full Version : گفتگو: از کار انداختن کلید ویندوز هنگام استفاده برای کاربر



amirali111
پنج شنبه 19 شهریور 1388, 13:55 عصر
هنگام اجرای برنامه ارائه داده شده به مشتری گاهی اوقات لازم است برای افزایش کارآئی بهتر برخی از دگمه ها رو هنگام استفاده از کار انداخت. که در این صورت از on page down فرم می شود استفاده کرد و شماره آن دگمه را صفر قرارداد. اما شماره دگمه ویندور(لوگوی ویندوز سمت چپ پائین صفحه کلیدها) رو نمیدونم. لطفا" راهنمائی کنید.

nabeel
جمعه 20 شهریور 1388, 11:03 صبح
سلام amirali111
با فرض اینکه منظورتون از On Page Down همون On Key Down بوده , کد دکمه ویندوز 91 هستش

موفق باشی

amirali111
جمعه 20 شهریور 1388, 15:38 عصر
سلام amirali111
با فرض اینکه منظورتون از On Page Down همون On Key Down بوده , کد دکمه ویندوز 91 هستش

با تشکر از همکاری شما nabeel عزیز
من از کد زیر استفاده کردم و لی باز هم بعد از بالا آمدن فرم اصلی (که بصورت max کل صفحه مونیتور را پوشش میدهد) , کلید ویندوز عمل میکند. البته در رویداد on key down هم همین طور شد.( اونجا بجای keyascii از keycode نوشتم)
Select Case KeyAscii
Case 33, 34, 9, 18, 91
KeyAscii = 0

Case Else

End Select

nabeel
جمعه 20 شهریور 1388, 17:30 عصر
سلام
شما به یک موزد توجه نکردید , کلید ویندوز جزو کلیدهای استاندارد نیست برای خنثی کردن اون بعد از تریگر شدن اون به طور نمونه کد زیر رو بنویسید ( به جای مساوی قرار دادن اون با صفر )



SendKeys "{BREAK}"

موفق باشید

amirali111
یک شنبه 22 شهریور 1388, 14:47 عصر
سلام
شما به یک موزد توجه نکردید , کلید ویندوز جزو کلیدهای استاندارد نیست برای خنثی کردن اون بعد از تریگر شدن اون به طور نمونه کد زیر رو بنویسید ( به جای مساوی قرار دادن اون با صفر )




SendKeys "{BREAK}"



بقول مولا علی(ع) . مرا بنده خویش ساختی.
درست شد .
1- فقط با توجه به اینکه من با استفاده از
( activex control (microsoft windos common control 6.0 sp6
روی فرم زمینه ام منو ایجاد کرده ام . وقتی یکی از منو را بصورت پائین ریز باز کرم و سپس کلید ویندوز رو زدم باز عمل کرد ولی با تاخیر!
2-دفاع شما رو از اکسس در مقابل کسی که اون رو به چالش کشیده بود خوندم . تشکر میکنم.
3- حال که ما کلید shift برنامه را می بندیم . آیا راهی برای هک برنامه ما وجود دارد.(شرمنده که موضوعش اینجا نبود)

nabeel
یک شنبه 22 شهریور 1388, 16:22 عصر
سلام amirali111

در خصوص سئوال 1
در اینطور مواقعی قاعدتاً باید با جایگزینی ESC به جای BREAK مشکل حل بشه , اگه نشد نمونه فایل لازمه تا بررسی بشه ( تنها بخشی که مشکل داره )
در خصوص سئوال 3 هم , گو اینکه که قبلاً مطرح شده و جاش هم اینجا نیست ولی , صد در صد امکانش وجود داره , اولیش هم آزاد کردن همون دکمه Shift قفل شده هستش
توی وبلاگم ابزاری رو هم برای این کار قرار داده بودم که میتونید دانلود کنید

موفق باشید

amirali111
یک شنبه 22 شهریور 1388, 22:45 عصر
سلام amirali111

در خصوص سئوال 1
در اینطور مواقعی قاعدتاً باید با جایگزینی ESC به جای BREAK مشکل حل بشه , اگه نشد نمونه فایل لازمه تا بررسی بشه ( تنها بخشی که مشکل داره )
در خصوص سئوال 3 هم , گو اینکه که قبلاً مطرح شده و جاش هم اینجا نیست ولی , صد در صد امکانش وجود داره , اولیش هم آزاد کردن همون دکمه Shift قفل شده هستش
توی وبلاگم ابزاری رو هم برای این کار قرار داده بودم که میتونید دانلود کنید

موفق باشید
سلام؛
از ESC هم استفاده کردم . زمانی که منو پائین ریخته, کلید ویندوز همچنان عمل میکنه که این مطلوب نیست.فایل رو گذاشتم (تو پرانتز: در بعضی جاها با اینکه فایلم فقط یک فرم و چند رویداد توش داره , چرا حجمش زیاده ؟ البته جداول و فرمهائی درآن ایجاد و پاک شده اند )

nabeel
یک شنبه 22 شهریور 1388, 23:11 عصر
سلام

دوست عزیز شما که اصلا مشخصه Key Preview رو فعال نکرده بودید
اون رو بر روی حالت Yes قرار بدید مشکل حل میشه

در خصوص حجم هم , فایل رو Compact کیند

موفق باشید

amirali111
دوشنبه 23 شهریور 1388, 00:25 صبح
KEY PREVIEW رو برای فرم YES گذاشتم ولی باز همون شد!!!
ضمنا در صفحه کلیدهائی که دو کلید ویندوز داره چطور؟(کد کلید اون چنده و از کجا میشه این کدهارو یافت. البته من یکسری رو که استاندارد است گرفتم و لی بقیه به چه شکلی امکان داره؟)

nabeel
دوشنبه 23 شهریور 1388, 06:13 صبح
سلام

نمیونم مشکل از کجا میتونه باشه ( روی سیستم خودم که با توجه به نمونه فایل شما مشکلی وجود نداشت )
فقط ممکنه شما توی فایل اصلیتون توی عملکرد تایمر کاری انجام میدید که مخل عملیات شده !؟

کلید دوم ویندوز رو هم نمیدونم ( کیبورد من نداره ) , جهت به دست آوردن اون تایپ کنید
Msgbox KeyCode

موفق باشید