تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تحسين التعامل مع عناصر النموذج
#1
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته

ارغب في تحسين تعامل المستثمر مع شاشة / ادخال ذاتية / في مثالي المرفق، باتاحة المجال له

1- ان يتم الانتقال من حقل الى اخر من حقول تلك الشاشة عن طريق الضغط على زر Enter

2- كما ارغب بان يتم اظهار حقول الارقام ( هاتف 1 - هاتف 2 - جوال - فاكس ) بالارقام العربية مثل 4555637 وليس
بالارقام الهندية التي من الصعب قراءتها

ارجو تعديل المثال المرفق
والف الف شكر


الملفات المرفقة
.rar   Q02.rar (الحجم : 286.21 ك ب / التحميلات : 47)
الرد }}}
تم الشكر بواسطة:
#2
للتقل بمفتاح Enter في النافذة
ضع هذه الــ Function في اي مكان في كود الــ Form

كود :
Protected Overrides Function ProcessCmdKey _
       (ByRef msg As System.Windows.Forms.Message, _
       ByVal keyData As System.Windows.Forms.Keys) As Boolean
        If msg.WParam.ToInt32() = CInt(Keys.Enter) Then
            SendKeys.Send("{Tab}")
            Return True
        End If
        Return MyBase.ProcessCmdKey(msg, keyData)
    End Function
Smile:eek:Smile
الرد }}}
تم الشكر بواسطة:
#3
بالنسبة لكتابة الأرقام بالإنجليزي :
في حدث الـ FormLoad
كود :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.TextBox1.RightToLeft = Windows.Forms.RightToLeft.No
    End Sub
أو يمكنك تغييرها من خصائص مربع النص مباشرة
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}
تم الشكر بواسطة:
#4
[color="#0000cd"][b]شكرا اخي
kslawy
على ماتفضلت به من جعل كتابة الارقام تاخد شكل العربي ( الاجنبي)

بارك الله فيك
[/b][/color]
الرد }}}
تم الشكر بواسطة:
#5
ا[b]خي الكريم
Genius Live

ان الكود الذي تفضلت به رائــــــــــــــــع، من اجل جعل التنقل بين الحقول يتم عن طريق الضغط على زر Enter
[COLOR="#B22222"]
[u]ولكن فيه مشكلة خطيرة للغاية
[/u][/COLOR]

وهي عند الوصول الى زر الحفظ، والضغط على زر
enter
المفروض ان يتم حفظ البيانات

ولكن الذي يحدث......
ان الزر لا يستجيب لحدث الحفظ وينتقل الى الزر التالي

[b][SIZE=5]وهذه مشكلة كبيرة

ارجو تعديل الكود في ظل المشكلة المطروحة
والف شكر
[/b][/SIZE][/b]
الرد }}}
تم الشكر بواسطة:
#6
كود :
Private Sub TextBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox4.KeyDown, TextBox3.KeyDown, TextBox2.KeyDown, TextBox1.KeyDown
        If e.KeyCode = Keys.Enter Then
            SendKeys.Send("{Tab}")
        End If
    End Sub

لاحظ للـ Handles اللي في نهاية السطر الأول من الكود تم تجميع جميع أحداث مربعات النصوص (KeyDown) في حدث مربع النص الأول . كان ممكن نضع الكود لكل مربع نص علي حدا ولكن بهذه الطريقة يتم اختصار الأكواد
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}
تم الشكر بواسطة:
#7
شكرا اخي
kslawy

[HTML]Private Sub TextBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox4.KeyDown, TextBox3.KeyDown, TextBox2.KeyDown, TextBox1.KeyDown
If e.KeyCode = Keys.Enter Then
SendKeys.Send("{Tab}")
End If
End Sub[/HTML]

على هذا الكود الرائع، وفعلا هو شعال مائة مائة ولكـــــــــــــــــن
المشكلة انني مضطر ان اضعه في حدث ال Keydown لكافة العناصر المتواجدة على الشاشة، ولكن وجدت الكود الذي تفضل به الاخ Genius_Live
مختصر، اي بمعنى اخر، اقوم باستدعائه مرة واحدة فقط عند تحميل النموذج، ولكن به مشكلة العيب الدي شرحته،

ولا اعرف ان كان يمكن اصلاح كود الاخ Genius_Live يحيث يصبح فعال وعملي !!!!!!!!!!!!!

والف شكر
الرد }}}
تم الشكر بواسطة:
#8
kafi كتب :شكرا اخي
kslawy

[HTML]Private Sub TextBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox4.KeyDown, TextBox3.KeyDown, TextBox2.KeyDown, TextBox1.KeyDown
If e.KeyCode = Keys.Enter Then
SendKeys.Send("{Tab}")
End If
End Sub[/HTML]

على هذا الكود الرائع، وفعلا هو شعال مائة مائة ولكـــــــــــــــــن
المشكلة انني مضطر ان اضعه في حدث ال Keydown لكافة العناصر المتواجدة على الشاشة، ولكن وجدت الكود الذي تفضل به الاخ Genius_Live
مختصر، اي بمعنى اخر، اقوم باستدعيه مرة واحدة فقط عند تحميل النموذج، ولكن به مشكلة العيب الدي شرحته،

ولا اعرف ان كان يمكن اصلاح كود الاخ Genius_Live يحيث يصبح فعال وعملي !!!!!!!!!!!!!

والف شكر

السلام عليكم ورحمة الله وبركاته

تفضل أخي الكريم
هذا تعديل لكود الأخ Genius_Live - من بعد إذنه
كود :
[color=blue][FONT=Consolas]Protected[/FONT][/color][color=#000000][FONT=Consolas] [COLOR=blue]Overrides[/color] [color=blue]Function [/color][/FONT][/COLOR][color=#000000][FONT=Consolas]ProcessCmdKey[/FONT][/color][color=#000000][FONT=Consolas]([/FONT][/color][color=#000000][FONT=Consolas][COLOR=blue]ByRef [/color][/FONT][/COLOR][color=#000000][FONT=Consolas]msg [/FONT][/color][color=blue][FONT=Consolas]As [/FONT][/color][color=#000000][FONT=Consolas]System.Windows.Forms.[/FONT][/color][color=#2B91AF][FONT=Consolas]Message[/FONT][/color][color=#000000][FONT=Consolas], [/FONT][/color][color=#000000][FONT=Consolas][COLOR=blue]ByVal [/color][/FONT][/COLOR][color=#000000][FONT=Consolas]keyData [/FONT][/color][color=blue][FONT=Consolas]As [/FONT][/color][color=#000000][FONT=Consolas]System.Windows.Forms.[/FONT][/color][color=#2B91AF][FONT=Consolas]Keys[/FONT][/color][color=#000000][FONT=Consolas]) [/FONT][/color][color=blue][FONT=Consolas]As [/FONT][/color][COLOR=blue][FONT=Consolas]Boolean
[/FONT][/COLOR][color=blue][FONT=Consolas]If [/FONT][/color][color=#000000][FONT=Consolas]msg.WParam.ToInt32() = [/FONT][/color][color=#0000FF][FONT=Consolas]CInt[/FONT][/color][color=#000000][FONT=Consolas]([/FONT][/color][color=#2B91AF][FONT=Consolas]Keys[/FONT][/color][color=#000000][FONT=Consolas].Enter[/FONT][/color][color=#000000][FONT=Consolas]) [/FONT][/color][color=#0000FF][FONT=Consolas]Then[/FONT][/color]
[color=blue][FONT=Consolas]If [/FONT][/color][color=#000000][FONT=Consolas][COLOR=blue]TypeOf [/color][/FONT][/COLOR][color=#000000][FONT=Consolas][COLOR=blue]Me[/color][/FONT][/COLOR][color=#000000][FONT=Consolas].ActiveControl [/FONT][/color][color=blue][FONT=Consolas]Is [/FONT][/color][color=#2B91AF][FONT=Consolas]Button [/FONT][/color][COLOR=#0000FF][FONT=Consolas]Then
[/FONT][/COLOR][color=blue][FONT=Consolas]Return[/FONT][/color][color=#000000][FONT=Consolas][COLOR=blue]MyBase[/color][/FONT][/COLOR][color=#000000][FONT=Consolas].ProcessCmdKey[/FONT][/color][color=#000000][FONT=Consolas]([/FONT][/color][color=#000000][FONT=Consolas]msg[/FONT][/color][color=#000000][FONT=Consolas], [/FONT][/color][color=#000000][FONT=Consolas]keyData[/FONT][/color][COLOR=#000000][FONT=Consolas])
[/FONT][/COLOR][COLOR=#0000FF][FONT=Consolas]Else
[/FONT][/COLOR][color=#2B91AF][FONT=Consolas]SendKeys[/FONT][/color][color=#000000][FONT=Consolas].Send[/FONT][/color][color=#000000][FONT=Consolas]([/FONT][/color][color=#A31515][FONT=Consolas]"{Tab}"[/FONT][/color][COLOR=#000000][FONT=Consolas])
[/FONT][/COLOR][color=blue][FONT=Consolas]Return[/FONT][/color][COLOR=blue][FONT=Consolas]True
[/FONT][/COLOR][color=blue][FONT=Consolas]End[/FONT][/color][COLOR=blue][FONT=Consolas]If
[/FONT][/COLOR][color=blue][FONT=Consolas]End[/FONT][/color][COLOR=blue][FONT=Consolas]If
[/FONT][/COLOR][color=blue][FONT=Consolas]Return[/FONT][/color][color=#000000][FONT=Consolas][COLOR=blue]MyBase[/color].ProcessCmdKey[/FONT][/COLOR][color=#000000][FONT=Consolas]([/FONT][/color][color=#000000][FONT=Consolas]msg[/FONT][/color][color=#000000][FONT=Consolas], [/FONT][/color][color=#000000][FONT=Consolas]keyData[/FONT][/color][COLOR=#000000][FONT=Consolas])
[/FONT][/COLOR][color=blue][FONT=Consolas]End[/FONT][/color][color=#000000][FONT=Consolas] [COLOR=blue]Function[/color][/FONT][/COLOR]

بالتوفيق
الرد }}}
تم الشكر بواسطة:
#9
عفوا الأكواد ظهرت بشكل غير صحيح
وهذا هو التصحيح

كود :
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
        If msg.WParam.ToInt32() = CInt(Keys.Enter) Then
            If TypeOf Me.ActiveControl Is Button Then
                Return MyBase.ProcessCmdKey(msg, keyData)
            Else
                SendKeys.Send("{Tab}")
                Return True
            End If
        End If
        Return MyBase.ProcessCmdKey(msg, keyData)
    End Function

بالتوفيق
الرد }}}
تم الشكر بواسطة:
#10
شكرا اخي
soriaty على اجابتك

ولكن بعد نسخ الكود...
وعند معالجة البرنامج

[ATTACH=CONFIG]3226[/ATTACH] ظهر وجود رسالة خطأ
ReturnMybass is not declare

اعمل على ( win8 - visual 12)


الملفات المرفقة صورة/صور
   
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سؤال حول التعامل مع قاعدة البيانات maherhaddaf 2 434 21-07-23, 10:05 AM
آخر رد: maherhaddaf
  هل ممكن اجعل عناصر ال LISTBOX بشكل افقي ismaeel 0 381 01-05-23, 11:26 PM
آخر رد: ismaeel
  مشكلة فى اضافة عناصر فى الداتا جريد فيو خالد كامل1 14 1,629 16-02-23, 03:10 AM
آخر رد: خالد كامل1
  التعامل مع الملفات النصية - حذف سطر معين من ملف mmaalmesry 2 588 20-01-23, 09:29 AM
آخر رد: mmaalmesry
Exclamation [VB.NET] التعامل مع عناصر صفحة html من خلال WebView2 paypalet 2 849 26-09-22, 05:00 PM
آخر رد: Basil Abdallah
  حجم النموذج mohamedassim 3 571 21-09-22, 10:06 AM
آخر رد: Taha Okla
  [سؤال] كيفيه التعامل مع الاسكي كود حسن الجلب 5 905 16-08-22, 09:01 AM
آخر رد: سعود
  جلب عناصر قائمة فرعية في MenuStrip ابراهيم ايبو 4 1,127 09-08-22, 01:08 AM
آخر رد: Taha Okla
  [سؤال] كيفيه التعامل مع ملف XML من حيث الانشاء والكتابة والتعديل والحذف والقراءة حسن الجلب 2 737 02-08-22, 03:00 AM
آخر رد: dr.programming
  التعامل مع قاعدة بيانات sql عن بعد عبدالكريم برشدان 3 811 25-07-22, 03:49 AM
آخر رد: asemshahen5

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم