سلام دوستان.چطور می تونم با سی شارپ کیبورد رو قفل کنم ، فقط دکمه های خاصی ازش کار کنن.
ممنون میشم اگه کمک کنین.
سلام دوستان.چطور می تونم با سی شارپ کیبورد رو قفل کنم ، فقط دکمه های خاصی ازش کار کنن.
ممنون میشم اگه کمک کنین.
مثلا برای یک تکست باکس میشه این کارو کرد
در رویداد KEY_PRESS تکست باکس با نوشتن کد زیر فقط میشه عدد نوشت
e.Handled = !char.IsDigit(e.KeyChar) && !char.IsControl(e.KeyChar);
سلام
میتونی با گذاشتن شرط توو رویداد keypress کنترل کنی e.handeled بغیر از برای دکمه های مورد نظرت true کنه مثلا کد زیر فقط عدد میزاره وارد شه:
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && e.KeyChar != '.')
e.Handled = true;
مرسی دوستان.اینا رو می دونم منظوز من این نیست. میخوام برنامم وقتی ویندوز بالا میاد بالا بیاد و دکمه هایی مثل ctrl+alt+del و هر دکمه ای که باعث بشه کاربر از برنامه خارج بشه قفل بشه.
آخرین ویرایش به وسیله se7en66 : چهارشنبه 04 اردیبهشت 1392 در 19:52 عصر
من فقط میدونم که باید از توابع API استفاده کنید
ببینید این 3تا لینک بدردتون میخوره؟؟؟
http://www.codeproject.com/Articles/...ard-Hooks-in-C
http://www.codeproject.com/Articles/...-Keyboard-Hook
http://blogs.msdn.com/b/toub/archive...03/589423.aspx
سلام
خب این کار شما که می خواید کیبورد رو غیر فعال کنید کار بسیار بسیار اشتباهی است!
مثلا میای Ctrl + alt + delete رو غیر فعال می کنید که TaskManager نیاد ؟؟؟ خب من با Ctrl + Shift +Esc میارمش !! یا روی Start کلیک راست می کنم و Task Manager رو باز میکنم !
کاری که شما باید انجام بدید اینه که باید از طریق رجیستری این ها رو غیر فعال کنید !
مثلا کد زیر به طور کل Task Manager رو از راه صحیح از کار میندازه !
RegistryKey key = Registry.CurrentUser.CreateSubKey("SOFTWARE\\Micro soft\\Windows\\CurrentVersion\\Policies\\System");
key.SetValue("DisableTaskMgr", "1", RegistryValueKind.DWord);
موفق باشید
مرسی از دوستان. اگه باز سوال داشتم مزاحمتون می شم.