السلام عليكم
لدي برنامج استعمل فيه جهاز الباركود
ولكنني اريد منع المستخدم من ادخال في textbox
اي يتم الادخال فقط عن الباركود
السلام عليكم
لدي برنامج استعمل فيه جهاز الباركود
ولكنني اريد منع المستخدم من ادخال في textbox
اي يتم الادخال فقط عن الباركود
السلام عليكم ورحمة الله
فقط اكتب الكود التالي في حدث Keypress لمربع النص الذي تريد منع الادخال فيه
e.Handled = True
بالتوفيق ...
مختار أحمد
موقع الويب : http://www.luxorsystems.com
منتدياتنا :http://www.luxorsystems.com/forum/index.php
للمراسلة
luxorsystems@hotmail.com
للاتصال التليفوني
00201228085123
من خصائص العنصر textbox، اجعله enabled = false.
أو تستطيع إضافة خاصية ReadOnly في وضع التنفيذ.
مثال من C#.NET:
protected void Page_Load(object sender, EventArgs e)
{
Text_Box_Name.Attributes.Add("Readonly", "Readonly");
}تم تعديل هذه المشاركة بواسطة Xacker في 15 أغسطس 2010 في 00:58
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
X ,, انت بتجيب الكلام ده منين :ohmy:
واضح انك من شدة الفرحة بسبب الموضوع إياه مش مركز
الكود ده ينفع فى الـASP.NET يعنى ويب مش ويندوز
هنا تكتب دايركت :D
Text_Box_Name.ReadOnly = True
إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال
GHOST2010 كتب:واضح انك من شدة الفرحة بسبب الموضوع إياه مش مركز
ههههه تقصد من قلّة النوم أما الموضوع إياه فيخليني مش مركّز لما أضرب ايدي على جيبي مالاقيش معايا فلوس :lol:
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
شكرا لكم يااخواني
ولكني لو جعلت e.handle = true
فأن جهاز الباركود لن يستطيع الكتابة في ال textbox
كذلك في الخاصية read only or enable لا تنفع
اعتقد الحل الوحيد هو ايجاد دالة عن طريقه يتم معرفة keypress جاءت من لوحة المفاتيح او من جهاز باركود
وهل ينفذ جهاز الباركود الحدث KeyPress ?
حقيقة لم أنتبه لهذا من قبل ,, يرجى التأكد من هذه المعلومة :unsure:
إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال
للأسف جهاز الباركود يعامل معاملة لوحة المفاتيح يعني لوضغطة على الرقم 23697781 في لوحة فأن الباركود يقوم بنفس المهمة اي يستعمل الحدث keypress وهذه المعلومة انا متأكد منها لأني مجربها
يا شباب انا دوخت على الموضوع ده فى المندى هنا لكن للاسف ... مفيش حل نفع معايه ...
بس طبعا كلنا عارفين ان المصرى معروف بجبروته هههههه
بحيله بسيطه كده قدرت اتغلب والحمد لله على المشكله .
وقولت طبعا لازم افيد احبابى فى المنتدى لانى بجد استفد كتيييييييير جدا من المنتدى هنا فى شغلى .
الفكره ان انا عامل برنامج عندى فى الشركه لاستخراج فواتير وفى نفس الوقت اعدام الفواتير الغير مسدد منها .... وكان لازم فى شاشة الاعدام مخليش المستخدم يقدر يدخل رقم الفاتوره يدوى لانه ممكن يعدم الفاتتوره وهى مش موجوده بالفعل معاه فا كان لازم وضورورى جدا نلاقى حل يمنع الادخال اليدوى .....
وزى ما بيقولو الحاجه ام الاختراع ..
والحل بسيط جدا ..
الفكره انى بعمل تيمر وبحط فى حدث keyprees للتكست الى عاوز امنع الادخال اليدوى فيه كود يشغل التيمر فى حالة الكتابه داخل التكست ..
وعند تشغيل التيمر ... التيمر يحتوى على دالة len لحساب عدد الاحرف داخل التكست بسرعه كبيره تكون اقل من نص سانيه
والكود ده يقول ان لو عدد الارقام او الاحرف اقل مثلا من 3 ارقام يصفر التكست من اى نص فيه ..
وبكده المستخدم مش حيقدر يسبق التايمر .
ولكن فى حالة الادخال بالباركود فا العمليه بتم فى اقل من الثانيه وبكده الكود الى داخل التايمر الى بيعد الارقام والحروف الى فى التكست حيجد ان عدد الحروف او الارقام فى التيكست اكبر من 3 او 4 ازى ما احدد انا فى الكود
وبكده يبقى نجحنا فى منع المستخدم من ادخال الكود بلوحة المفاتيح ..
يارب اكون نجحت فى توصل المعلومه
وده الكود الى فى التيمر
dim x
( x=len( text1.text
if x<3 then
""=text1,text
end if
timer1.enable=false
وده الكود الى حنحطه فى التيكست علشان نشغل التيمر فى حالة محاولة الادخال فى حدث keypres
timer1.enable,tru
واتمنا اكون وصلت الفكره
سلام وعليكم
خطة جيدة
بس لو استخدم اليوزر النسخ و اللصق
باسناد القيمه false للخاصيه shortcutenable للتكست بوكس لمنع اظهار القائمة بالنقر بالماوس
فى الحدث KeyDown يمكن معرفه اذا تم الضغط على اى من ازرار التحكم CTRL ومنعه
CTRL+V
Private Sub TextBox2_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox2.KeyDown
If e.Modifiers = Keys.Control Then
e.Handled = True
TextBox2.Text = ""
End If
End SubVB.NET and C# Comparison
http://www.harding.edu/fmccown/vbnet_csharp_comparison.html
=-=-=-=-=-=-=
ذو العلم يشقى فى النعيم بعلمه .:. واخو الجهالة فى الشقاوة ينعم
=-=-=-=-=-=-=
يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل
=-=-=-=-=-=-=
ان لم تستطع ان تجد ما تفعله فافعل ما لم تسطع ان تجده

textbox1.locked=true
textbox1.enable=false