الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمل تكست له خاصيه مزدوجه

بدأه أسامة عبد السلام المسيدى في 8 يناير 2011 · 11 رد · 1,864 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الاخوه الافاضل

اذا كان لدى حقلين فى جدول أحدهما كود الموظف و الآخر اسمه و أريد اضافة تكست على الفورم بحيث يعطينى امكانية كتابة الكود أو أسم الموظف على نفس التكست بوكس الذى اضفته على الفورم فلو افترضت اننى نسيت الكود من الممكن أكتب الاسم و العكس و عند الضغط على زر الادخال يقوم باستدعاء باقى حقول الجدول مثل درجة الموظف و رتبته الوظيفيه و راتتبه الى آخر حقول الجدول بالنسبه لعملية الاستدعاء قمت بتنفيذها وتبقى فكرة اننى استخدم نفس التكست بوكس فى حالة استخدام كود الموظف أو حتى جزء من اسمه ليظهر لى الاسماء المقترحه أى اننى ممكن ان انفذ ذلك على كومبوبكس بدلا من التكست فكيف يمكن استخدام الكومبوبكس ليعطى لى هذه الخاصيه المزدوجه وهى كتابة أرقام أو حروف لاقوم بعد ذلك باستدعاء باقى حقول الجدول

تقبلوا التحيه

#2

أخي الكريم

عرفت طلبك حتى وصلت للكومبو بوكس, تراجعت وتلخبطت

وضح أكثر وسنرى

مع تحياتي

اللهم اجعلنا أهلاً لحمل رسالة العلم ونشرها

لتنعم أمة الإسلام بخير العلم ونوره

www.ijoul.com

#3

أشكرك أخى على الرد ولكى ابسطها لك أكثر عندما ذهبت لسوبر ماركت لشراء لوازمى هذا السوبر ماركت يستخدم برنامج يعمل بالبار كود رأيته فى خانه واحده ممكن أن يستخدم رقم الباركود و يقرأه من الريدر أو يكتب الكود بطريقه يدويه اذا كان يحفظه أو يكتب أسم الصنف فى نفس الخانه طبعا أقصد نفس التكست أو نفس الكومبوبكس ليعطى له السطر الخاص بالصنف وعندما سألته أخبرنى بأن هذا البرنامج معمول بالفيجوال بيسك دوت نت فاستغربت أرجو أن تكون و صلت الفكره اى اننى لو أملك ملف خاص للاصناف فكيف يمكننى اظهار كود الصنف أو اسمه فى نفس التكست بوكس و بالضغط على زرار الانتر يظهر لى باقى بياناته

تقبل التحيه

#4

السلام عليكم جميعا

اخي الفاضل اسامة ان العملية التي تتحدث عنها سهلة العمل ويمكن تطبيقها بكل سلوسة

ولكن بالوضع الذي تطلبه انت فهي شبه مستحيلة؟؟؟؟؟ لماذا !!!!

انا سأشرح لك

بالبداية انت تقول ان التكست يقبل رقم الموظف وبناء عليه يجلب لك الموظف وهذا طبيعي

لكن المشكلة ليست بالتكست وانما بجملة الاستدعاء فهي عند اخذ القيمة من التكست تبحث بها عن رقم الموظف مثلا

ولكن عند ادخال اسم الموظف هذه تعتبر جملة خاطئة لان جملة الاستعلام تخص الرقم وليس الاسم

ولحل هذه المشكلة يجب عمل جملة استعلام للاسم ويمكن ادخال الاسم في نفس التكست وهنا لا توجد اي مشاكل لانك حددت جملة الاستعلام وبناء على المدخلات سوف يبحث

يمكنك استخدام RadioButton في تحديد جملة الاستعلام مع ابقاء التكست على حاله

وعندها يصبح لدينا تكست له خاصية مزدوجة

الامر بسيط واذا هنالك اي استفسار اخر انا جاهز

بالتوفيق

بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم

#5

شكرا أخى عبد الرحمن على الرد وانت قد قدمت لى فكره جيده وهو اننى آخذ محتويات التكست فى متغير ثم أعمل اختبار ب if اذا كانت محتويات هذا المتغير أرقام حينها تكون جملة الاستعلام من خلال الكود و اذا كان المتغير يحتوى على حروف حينها ستكون جملة الاستعلام تسأل عن الاسم و هكذا و ليس فى بالى الان كيف أسأل عن نوعية المتغير اذا كان يحتوى على حروف أو أرقم أرجو أن أكون وضحت الفكره وهذا طبعا ينفذ فى حدث الادخال

تقبل التحيه

#6

أخي الكريم وضحت الفكرة إليك التالي:

قم بتهيئة جمل استعلام لكل حالة (حالة الرقم - الاسم - التاريخ ----- وأي استعلامات أخرى).

اختبر نوع القيمة المدخلة في التيكست بوكس هل هي (رقم - نص - تاريخ ...... الخ).

إذا كان نوع القيمة رقم نفذ استعلام الرقم

إذا كان نوع القيمة نص نفذ استعلام النص

إذا كان نوع القيمة تاريخ نفذ استعلام التاريخ

وهكذا سيتحقق لك ما تريد

تستطيع التحقق من أن القيمة رقمية عن طريق الدالة Isnumeric

تستطيع التحقق من أن القيمة تاريخ عن طريق الدالة IsDate

 If IsNumeric(TextBox2.Text) Then
            MsgBox("القيمة رقمية")
        ElseIf IsDate(TextBox2.Text) Then
            MsgBox("القيمة تاريخ")
        End If

أتمنى أن أكون قد أفدتك

مع تحياتي

اللهم اجعلنا أهلاً لحمل رسالة العلم ونشرها

لتنعم أمة الإسلام بخير العلم ونوره

www.ijoul.com

#7

السلام عليكم اخ اسامة

الامر لا يحتاج الى متغيرات بل الى حملة شرط بسيطة الصورة والكود سوف يوضح

الصورة بالمرفقات

والكود كتالي

if RadioButton1.checked = true then
tabeladapter.textcommand = "Select * from Employee where Emp_id = ' " + textbox1.text + " ' "
tabeladapter.ExcuteQuerye()
else if radiobutton2.checked = true then
tabeladapter.textcommand = "Select * form Employee where Emp_name = ' " + textbox1.text + " ' "
tabeladapter.ExcuteQuerye()
end if

هذا هو الكود اخي الكريم

بالتوفيق

post-174818-073103400 1294729739_thumb.j

المرفقات
Arabteam2000.JPG

بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم

#8

شكرا للاخوه الافاضل على الرد وبالنسبه لرد الاخ عبد الرحمن فلى ملاحظه وهى ان الذى يبيع فى سوبر ماركت لايريد ان يتحرك خارج لوحة المفاتيح لانجاز عمله بالسرعه المطلوبه هو يحتاج الى ادخال رقم الباركود أو جزء من الاسم ليعطى له الكومبوبكس باقى الاسم ثم يضغط على زر الادخال لاعطائه باقى البيانات المطلوبه وهكذا اى ان استعمال الماوس ليختار من RadioButton هى عمليه فيها مشقه بالنسبه اليه و الصحيح ان يحدث كل هذا فى حدث الادخال لانجاز عمله بطريقه أسرع

شكرا لكم جميعا على الرد

#9
أسامة عبد السلام المسيدى كتب:

شكرا للاخوه الافاضل على الرد وبالنسبه لرد الاخ عبد الرحمن فلى ملاحظه وهى ان الذى يبيع فى سوبر ماركت لايريد ان يتحرك خارج لوحة المفاتيح لانجاز عمله بالسرعه المطلوبه هو يحتاج الى ادخال رقم الباركود أو جزء من الاسم ليعطى له الكومبوبكس باقى الاسم ثم يضغط على زر الادخال لاعطائه باقى البيانات المطلوبه وهكذا اى ان استعمال الماوس ليختار من RadioButton هى عمليه فيها مشقه بالنسبه اليه و الصحيح ان يحدث كل هذا فى حدث الادخال لانجاز عمله بطريقه أسرع

شكرا لكم جميعا على الرد

العذر منك اخي الكريم

هل من الممكن تعطيني ما تريد بالظبط لاتمكن من مساعتدك على اكمل وجه

بالتوفيق

بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم

#10

أخى عبد الرحمن الحل هو الذى طرحه الاخ محمد الجول أرجو ان أكون قد كتبت اسمه بصوره صحيحه

#11
اقتباس

أخى عبد الرحمن الحل هو الذى طرحه الاخ محمد الجول أرجو ان أكون قد كتبت اسمه بصوره صحيحه

أخي الكريم

ذكرت اسمي بالشكل الصحيح جداً لحد اعتقدت بأنك تعرفني شخصياً :lol: :lol:

الحمدلله أن الحل الذي وضعته صحيح

ولك مني السلام

مع تحياتي

تم تعديل هذه المشاركة بواسطة m.aljoul في 12 يناير 2011 في 03:50

اللهم اجعلنا أهلاً لحمل رسالة العلم ونشرها

لتنعم أمة الإسلام بخير العلم ونوره

www.ijoul.com

#12
if IsNumeric(textbox1.text) then
Tableadapter.TextCommand = "Select * From Employee where Emp_id = ' " + textbox1.text + " ' "
TableAdapter.ExcuteQuerey()
elseif IsString(textbox1.text) then
Tableadapter.TextCommand = "Select * From Employee where Emp_name = ' " + textbox1.text + " ' "
TableAdapter.ExcuteQuerey()
elseif IsDate (textbox1.text) then
Tableadapter.TextCommand = "Select * From Employee where Emp_Birth = ' " + textbox1.text + " ' "
TableAdapter.ExcuteQuerey()
else
msgbox"Pleas Fill The Text:
exit sub
endif

هذا هو الكود المطلوب وبتالي صاحب السوبرماركت لايحتاج الى استخدام غير لوحة المفاتيح

فالكود يقوم بالتمييز نوع القيمة المدخلة حسب الشروط وعليها ينفذ جملة الاستعلام

بالتوفيق

بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم

مواضيع مشابهة