تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] التحقق من البيانات
#1
السلام عليكم

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

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


ودمتم
الرد }}}}
تم الشكر بواسطة:
#2
جرب حدث Lost focus
واي اشكال خبر به وباذن الله محلولة
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:
#3
هل تقصد انقل الكود الى حدث lost focus
الرد }}}}
تم الشكر بواسطة:
#4
لا طبعا لا اقصد هذا لان حسب علمي انك وجدت كود طويل يحول زر انتر الى زر تاب.
اللي اريده منك الان تسوي مثال بسيط وتكتب كود تحقق ابسط.
لازم مثال جديد مستقل ولو اعجبتك الطريقة تطبقها على مثالك وان لم تعجبك انساها.
ملاحظة!Smile
ترى اللي تريده طبقتها عدة مرات وماشية معي تمام


اول مربع نص اسمه tn والباقي على التوالي:
Textbox1
Textbox2

استخدمت حدثين :
1-LostFocus
2-KeyDown

وسواء نقرت بزر الادخال Enter ام نقرت زر Tab

وهذا هو الكلاس
كود :
Public Class Form1

    Private Sub Form1_FormClosing(sender As Object, e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        My.Settings.m = Me.Location
        My.Settings.Save()
    End Sub

    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        Me.Location = My.Settings.m
        tn.Focus()
    End Sub

    Private Sub tn_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles tn.KeyDown
        If e.KeyData = Keys.Enter Then
            If sender.text = "" Then
                sender.focus()
            Else
                TextBox1.Focus()
            End If

        End If

    End Sub

    Private Sub tn_LostFocus(sender As Object, e As System.EventArgs) Handles tn.LostFocus
        If sender.text = "" Then
            sender.focus()
        End If
    End Sub

    

    Private Sub TextBox1_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
        If e.KeyData = Keys.Enter Then
            If tn.Text.Trim.Replace(" ", "") = "" Then Exit Sub 'Or TextBox1.Text.Trim.Replace(" ", "") = "" Then Exit Sub
            If sender.text = "" Then
                sender.focus()
            Else
                TextBox2.Focus()
            End If

        End If


    End Sub

    Private Sub TextBox1_LostFocus(sender As Object, e As System.EventArgs) Handles TextBox1.LostFocus
        If tn.Text.Trim.Replace(" ", "") = "" Then Exit Sub
        If sender.text = "" Then
            sender.focus()
        End If

    End Sub

  

    Private Sub TextBox2_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles TextBox2.KeyDown
        If e.KeyData = Keys.Enter Then
            If tn.Text.Trim.Replace(" ", "") = "" Or TextBox1.Text.Trim.Replace(" ", "") = "" Then Exit Sub
            If sender.text = "" Then
                sender.focus()
            End If

        End If


    End Sub

    Private Sub TextBox2_LostFocus(sender As Object, e As System.EventArgs) Handles TextBox2.LostFocus
        If tn.Text.Trim.Replace(" ", "") = "" Or TextBox1.Text.Trim.Replace(" ", "") = "" Then Exit Sub
        If sender.text = "" Then
            sender.focus()
        End If

    End Sub

  
End Class
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:
#5
والمشروع مرفق vb 2010
لا اظنه يعمل لديك لانك ذكرت ان اصدارك اكسبرس
لكن الكلاس هذا هو مكتوب فوق المشاركة هذي


الملفات المرفقة
.zip   Just_My_Example.zip (الحجم : 32.12 ك ب / التحميلات : 37)
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:
#6
الكود اللي عندي اللي يخص التاب هو عمله يحول الانتر الى تاب علشان كذا استغنيت عنه واعتمدت على مفتاح الانتر لو استخدم الكود الأول رح يتلغي مفتاح الانتر ويصير عمله مثل عمل مفتاح التاب

المشكله في مفتاح انتر انه يطلع صوت ولكن ضروري لها حل

اللي ابيه الان هو التحقق من البيانات وعدم ترك مربع النص سواء بالانتر او التاب او الماوس اذا كان مربع النص لم يتحقق فيه الشرط وهو انه ارقام فقط ولا يترك فارغ

تحياتي لك
الرد }}}}
تم الشكر بواسطة:
#7
فين المشكلة لو تستخدم حدث فقدان التركيز؟؟؟؟
اضفها للي عندك وجرب
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:
#8
كيف

مالقيت حدث اسمه lost focus
الرد }}}}
تم الشكر بواسطة:
#9
السلام عليكم
بالنسبة للقسم الثاني من السؤال
في الحدث KeyDown
اكتب هذا الكود
كود :
Private Sub TextBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
        If e.KeyCode = Keys.Enter Then
            TextBox2.Focus()
        End If

    End Sub

وفي الحدث Validated

اكتب هذا الكود
كود :
Private Sub TextBox1_Validated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.Validated

هذا الكود غرضه التأكد من السجل المدني موجود اوغير موجود

        Dim con As New SqlConnection
        Dim cmd As New SqlCommand
        con.Close()
        con.ConnectionString = "Server=your server;Database=your database;Integrated Security=true"
        cmd.Connection = con
        con.Open()
        cmd.Parameters.Clear()
        cmd.CommandText = "Select * from your table where Number=@un"
        cmd.Parameters.Add("@un", SqlDbType.NVarChar, 50).Value = TextBox1.Text
        Dim dr As SqlDataReader = cmd.ExecuteReader()
        If dr.HasRows = True Then
            MessageBox.Show("هذا السجل موجود", "تحذير", MessageBoxButtons.OK, MessageBoxIcon.Warning)
            TextBox1.Focus()
            TextBox1.SelectionStart = 0
            con.Close()

        End If


    End Sub
الرد }}}}
تم الشكر بواسطة:
#10
السلام عليكم

الكود معمول للـ SQL انا عدلت عليه بس يوقف عند الداتا ريدر وبالتحديد عند السطر التالي :
PHP كود :
Dim dr As OleDbDataReader cmd.ExecuteReader() 

ارجو اصلاح المشكله
وهذا الكود بالكامل :

PHP كود :
Private Sub txtCRN_Validated(sender As ObjectAs EventArgsHandles txtCRN.Validated

        Dim cmd 
As New OleDbCommand
        ApoSYSconn
.Close()
        
ApoSYSconn.ConnectionString "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=.\ApoSYS.ACCDB"
        
cmd.Connection ApoSYSconn
        ApoSYSconn
.Open()
        
cmd.CommandText "Select * from tblCustomers where CivilRegNum=txtCRN"

        
Dim dr As OleDbDataReader cmd.ExecuteReader()
        If 
dr.HasRows True Then
            MessageBox
.Show("هذا السجل موجود""تحذير"MessageBoxButtons.OKMessageBoxIcon.Warning)
            
txtCRN.Focus()
            
txtCRN.SelectionStart 0
            ApoSYSconn
.Close()

        
End If

    
End Sub 

تحياتي لكم
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  ما هو كود حفظ البيانات من الداتا جريد فيو إلى قاعدة البيانات kofa 1 48 منذ 1 ساعه مضت
آخر رد: abid
  الحذف من قاعدة البيانات بدلات تشيك بوكس في داتا جريدفيو makky 2 84 08-12-16, 11:16 AM
آخر رد: superwoofer
  [سؤال] حفظ تاريخ معين بقاعدة البيانات توفي العراقي 4 97 07-12-16, 01:11 AM
آخر رد: adel27
  تغيير قاعدة البيانات الى .bak زيد زينوبي 3 60 03-12-16, 07:07 PM
آخر رد: ابراهيم النعيمي
  [سؤال] ايهما افضل في قواعد البيانات للتميم برنامج sal.softip 2 49 03-12-16, 06:59 PM
آخر رد: sal.softip
  قاعدة البيانات لا تدعم اللغة العربية ؟؟؟؟؟؟ صبري زينوبي 13 217 03-12-16, 04:47 PM
آخر رد: صبري زينوبي
  التحقق من وجود هذة القيمة فى الداتا جريد فيو مع العلم انى استخدم المعالج araxis 4 185 29-11-16, 07:26 AM
آخر رد: amgad525
  تغيير قاعدة البيانات من اكسس الى sql hglogtd 2 110 26-11-16, 03:03 AM
آخر رد: hglogtd
  [سؤال] ايهما افضل من جهة امن البيانات thevirus 2 91 24-11-16, 12:14 PM
آخر رد: thevirus
  [كود] الحذف من قاعدة البيانات بواسطة كلمة سر المبرمج العبقري 5 126 23-11-16, 05:21 PM
آخر رد: hglogtd

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


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