تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] ادخال كلمة السر بطريقة متميزة؟
#1
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته

يوجد للتكست بوكس خاصية اسمها PassWordChar
ان تم وضع * بها

فهذا معناه، ان الادخال سوف يكون عبارة عن نجوم

ولكن ارغب ان اطبق طريقة مغايرة، هي اظنها افضل من الطريقة التقليدية ( ********** ) على النحو التالي

بفرض ان كلمة السر هي 123456

عند كتابة الرقم 1 يجب ان يكون 1 وليس *
عند كتابة الرقم التالي وهو 2 يصبح 1 على شكل نجمة والرقم 2 ظاهر اي هكدا *2
عند كتابة الرقم التالي وهو 3 يصبح الرقم السابق (2) عبارة عن * اي هكدا **3

وهكذا
ودلك كما هو في البرامج الحديثة ، حيت فيها اتاحة مجال متميزة للمستثمر برؤية مايدخل من قيم

ملاحظة
( كل رقم يتم ادخاله ......بعد فاصل زمني معين ) يجب ان يتحول الى *
وذلك حتى نضمن ان اخر رقم من كلمة السر يتحول الى *

ارجو ممن اتضحت له الفكرة، تزويدي بالكود المناسب
والف شكر
الرد }}}}
تم الشكر بواسطة:
#2
السلام عليكم ورحمة الله وبركاته


لدي فكرة لكن لا يسعنى تذكر طريقة الكود وهو القيام برسم الرمز داخل الحدث KeyPressبدلالة موضع مؤشر الكتابة بواسطة GetPositionFromCharIndex الخاص بـ TextBox مع تشغيل المؤقت Timer1 الذي بدورة يعمل Refresh لاستعادة الشكل السري للرموز مع إيقاف نفسه


السلام عليكم ورحمة الله وبركاته
 
 
@@@ سامحوني، منقطع نهائياً @@@

 
الرد }}}}
تم الشكر بواسطة: سعود , 3booody , mohammed moh , sooriaty03
#3
السلام عليكم ورحمة الله وبركاته

طريقة غير احترافية وغير مكتملة 100% اتمنى نصائحكم بها؟

كود :
Private Sub Wait(ByVal n As Short)
        On Error Resume Next
        Dim S As New Stopwatch
        S.Start()
        Do While S.ElapsedMilliseconds < n
            Application.DoEvents()
        Loop
        S.Stop()
    End Sub
    Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        On Error Resume Next
        TextBox1.PasswordChar = ""
        TextBox1.Select(TextBox1.TextLength, TextBox1.TextLength)
        TextBox1.Text = TextBox1.Text.Replace(TextBox1.Text.Chars(TextBox1.TextLength - 2), "*")
        Wait(500)
        TextBox1.PasswordChar = "*"
    End Sub
    Dim pass As String = ""
    Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        On Error Resume Next
        If e.KeyChar.ToString = " " Then
            e.Handled = True
            Exit Sub
        End If
        If e.KeyChar = Chr(8) Then
            If TextBox1.SelectedText = 0 Then
                pass = pass.Substring(0, pass.Length - 1)
            Else
                'مشكلة في حال تحديد نص وازالته
            End If
        Else
            pass &= e.KeyChar.ToString
        End If
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        MsgBox(pass)
    End Sub
الرد }}}}
تم الشكر بواسطة: sherif khalid , sooriaty03 , @@أبورائد@@ , mohammed moh
#4
و عليكم السلام و رحمة الله
جرب هذا الكود أولا ضع تاكست بوكس واحد و واحد تايمر و شاك بوكس على الفورم + اترك الأسماء الإفتراضية كما هي
ثم ضع هذا الكود
كود :
Private passKey As String = String.Empty
    Private ignoreKeys As New List(Of Keys) From {Keys.Left, Keys.Up, Keys.PageUp, Keys.Home, Keys.Space}

    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        
        Dim emptyMenu As New ContextMenu
        TextBox1.ContextMenu = emptyMenu
        
        Timer1.Interval = 1000
        Timer1.Stop()
    End Sub

    Private Sub TextBox1_PreviewKeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.PreviewKeyDownEventArgs) Handles TextBox1.PreviewKeyDown
        If e.KeyData = Keys.Tab Then
            e.IsInputKey = True
        End If
    End Sub

    Private Sub TextBox1_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseUp
        TextBox1.SelectionStart = TextBox1.TextLength
    End Sub

    Private Sub TextBox1_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
        Timer1.Stop()
        If ignoreKeys.Contains(e.KeyCode) OrElse e.Control OrElse e.KeyData = Keys.Tab Then
            e.SuppressKeyPress = True
            Return
        End If
    End Sub

    Private Sub TextBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        e.Handled = True
        If e.KeyChar = ChrW(Keys.Escape) Then
            passKey = String.Empty
        ElseIf e.KeyChar = ChrW(Keys.Back) Then
            If passKey.Length = 1 Then
                passKey = String.Empty
            ElseIf passKey.Length > 1 Then
                passKey = passKey.Substring(0, passKey.Length - 1)
            Else
                Return
            End If
        ElseIf e.KeyChar = ChrW(Keys.Return) Then
            HideAllKeys()
            MessageBox.Show(passKey)
            Return
        Else
            passKey &= e.KeyChar.ToString
        End If

        If passKey.Length = 0 Then
            TextBox1.Text = ""
        ElseIf passKey.Length = 1 Then
            TextBox1.Text = passKey
        Else
            TextBox1.Text = New String("*"c, passKey.Length - 1) & passKey(passKey.Length - 1)
        End If
        TextBox1.SelectionStart = TextBox1.TextLength
        If passKey.Length > 0 Then
            Timer1.Start()
        End If
    End Sub

    Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
        Timer1.Stop()
        HideAllKeys()
    End Sub

    Private Sub HideAllKeys()
        TextBox1.Text = New String("*"c, passKey.Length)
        TextBox1.SelectionStart = TextBox1.TextLength
    End Sub


    Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox1.CheckedChanged
        If CheckBox1.Checked = True Then
            TextBox1.Text = passKey
        Else
            HideAllKeys()
        End If
    End Sub
بالتوفيق
الرد }}}}
تم الشكر بواسطة: sooriaty03 , @@أبورائد@@ , 3booody , hoob computer , kafi2030
#5
السلام عليكم و رحمة الله و بركاته,

أخي محمد, جزاك الله خيراً على هذا الكود الرائع و السريع و الخفيف Smile

لقد إستعملته في مشروع صغير أود طرحه في المنتدى عن قريب إن شاء الله, و كان ممتازاً.



تحياتي
الرد }}}}
تم الشكر بواسطة: mohammed moh
#6
السلام عليكم

عالسريع مارأيكم بهذا الكود:
PHP كود :
Private Sub TextBox2_TextChanged(sender As System.ObjectAs System.EventArgsHandles TextBox2.TextChanged
        Thread
.Sleep(300)
        
TextBox2.PasswordChar "*"
    
End Sub

    
Private Sub TextBox2_KeyPress(sender As System.ObjectAs System.Windows.Forms.KeyPressEventArgsHandles TextBox2.KeyPress
        TextBox2
.PasswordChar ""

    
End Sub 

الرد }}}}
تم الشكر بواسطة: الشاكي لله , mohammed moh , kafi2030 , Ameer syria
#7
كود حلو أخوية سجاد, بس شنو الفرق بينه و بين كود الأخ محمد؟

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



تحياتي
الرد }}}}
تم الشكر بواسطة:
#8
مثل متشوف عدد الاسطر قليل وتستطيع ان تزيد او تقلل السرعة عن طريق الـThread بزيادة الملي ثانية

لم اجرب كود الاخ محمد لكن عالسريع كتبت هذا الكود اعلاه
الرد }}}}
تم الشكر بواسطة: hoob computer
#9
السلام عليكم

بدات بتجريب الكود الاخ sajed

ولكن لم استطع تجربته بسبب ظهور رسالة خطأ


على ما يبدو ان هناك مكتبة يجب استدعاؤها، ولكن لا اعلمها

ارجو الارشاد


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

قم بتضمين هذه المكتبة:
PHP كود :
Imports System.Threading 
الرد }}}}
تم الشكر بواسطة: kafi2030


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Photo ما هو كود عدم تطابق كلمة المرور السيد الجوهري 1 39 27-11-16, 04:37 PM
آخر رد: محمود بكرى
  [كود] الحذف من قاعدة البيانات بواسطة كلمة سر المبرمج العبقري 5 118 23-11-16, 05:21 PM
آخر رد: hglogtd
Star [VB.NET] واجهتني مشاكل فى التنزيل من اليوتيوب حبيت اعملها بطريقة تانية لكنها لم تنجح بشكل كامل elhon.tec 0 45 07-11-16, 01:41 AM
آخر رد: elhon.tec
  استشارة بطريقة الحفظ بقواعد البيانات سكول سيرفر العواد الصغير 6 127 30-10-16, 08:07 PM
آخر رد: العواد الصغير
  ادخال تاريخ الميلاد makky 3 94 29-10-16, 01:41 AM
آخر رد: أبو عمر
Exclamation الرجاء المساعدة : كيف اخفى او اشفر كلمة السر لقاعدة بيانات من ملف App.config noway 2 89 28-10-16, 07:58 PM
آخر رد: noway
Rainbow [VB.NET] طلب بسيط: فورم ادخال بيانات خاص بالمطارات | ضرورى يجب تسلميه بعد بضع ساعات مشروع تخرج الماجيك مسعد 17 311 28-10-16, 08:31 AM
آخر رد: الماجيك مسعد
  طريقة ادخال ارقام في صندوق نص hatem555 3 434 27-10-16, 03:37 PM
آخر رد: rafaag777
Information [VB.NET] طريقة عمل مربع حوار يعمل على ادخال صورة إلى قاعدة البيانات thevirus 1 75 24-10-16, 01:49 PM
آخر رد: Adrees
  كيف يمكن عرض النماذج بطريقة مبوبة walkady 4 133 15-10-16, 10:03 PM
آخر رد: ابراهيم النعيمي

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


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