♥…ЯҠ…♥ Ответов: 3

Символы пароля показывают больше, чем то, что я набираю в текстовом поле пароля


Я действительно задаюсь этим вопросом, входя в Lotus notes.

Там,где я набрал 8 символов пароля во время входа в систему, он кажется более чем 12 символами.

Я подумал, набрал несколько лишних символов. Тогда только я понимаю, что формат задан именно так.Если я набираю 1 символ, он отображается как 4 символа вздохов!!!,Мне нравится реализовывать то же самое в asp.net. Не могли бы вы помочь мне с этим?

Я не знаю, где задать этот вопрос. вот почему я написал в общем-то.

например:

если я наберу "а" в текстовом поле пароля, то появится "XXXX", а если я наберу "Б", то появится "XXXXXXXX". Он добавляет еще 3 символа для каждого символа, который я набираю. Я только хочу знать, как этого можно достичь?

Я считаю, что это дает четкое представление о том, о чем я спрашиваю.......

MAKReddy

u сказал U типа будет 1 знак он показывает 4 но прежде чем у уже говорил, набирается 8 символов показывает 12 символов
какой из них правильный, я путаю с вашим вопросом.

♥…ЯҠ…♥

Пожалуйста, обратите внимание, что я упомянул более 12 символов

Vasim889

к.,я понял твою проблему, но где же код ?если вы дали код и тогда я решу ваши вопросы

Maciej Los

Что значит "к"?

♥…ЯҠ…♥

Я хочу реализовать его, у меня нет кода для этого. Я хочу знать концепцию, стоящую за этим. Вот и все

Maciej Los

Если длина возвращаемого текста равна длине входного текста, то в чем проблема? Длина маски не имеет значения!

♥…ЯҠ…♥

я хочу знать, как добавляются три символа, когда я набираю один символ. Если я наберу "а" в текстовом поле, то вместо " * "появится"****".

3 Ответов

Рейтинг:
6

♥…ЯҠ…♥

Привет Ребята,

Я попробовал то же самое и добился того же.
Для каждого клика он должен добавлять еще 3 символа в текстовое поле только для визуальных целей.
С этим

private void textBox1_KeyUp(object sender, KeyEventArgs e)
        {
//Records each and every key stroke and stores in temp variable.
             tempPassword += e.KeyCode.ToString();
//It should append three more characters to the text box.
             textBox1.AppendText("***");
        }


Это код, который я искал.


Рейтинг:
2

ledtech3

Вы можете сделать событие изменения текста примерно так, но тогда вам придется удалить лишний символ. перед проверкой пароля.

Private Sub PasswordTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PasswordTextBox.TextChanged
    If PasswordTextBox.Text.Count <= 1 Then
        PasswordTextBox.AppendText("***")
    End If
End Sub


входной текст-это тест, а выходной-T***est


♥…ЯҠ…♥

Насколько мне известно, он просто добавляет дополнительные 3 символа для 1 символа. Если я нажму 1 символ, он должен появиться как 4 символа. понял мой вопрос?

ledtech3

После некоторого тестирования с помощью события PasswordTextBox_KeyDown вы можете добавить любое количество символов на каждый введенный символ до максимального предела для элемента управления, после чего вы получите переполнение буфера. Но потребуется много кода, чтобы сделать его достаточно надежным для обработки событий delete или других KeyDown. Если вы удалите ограничения <=1 из приведенного выше примера, то он просто автоматически будет добавляться до тех пор, пока вы не получите переполнение буфера.

Рейтинг:
16

Wendelius

Не уверен, правильно ли я понял вопрос, но многие приложения не показывают фактическую длину пароля. Например, независимо от длины пароля в текстовом поле всегда может отображаться 8 звездочек. Часто это делается для того, чтобы человек, стоящий за вами, не мог интерпретировать длину пароля, чтобы получить намек на него.

Теперь, если хотите, вы можете отслеживать фактический ввод ключа и установить что-то еще в текстовое поле. В этом случае вы вообще не будете использовать текст в текстовом поле, поскольку он не имеет отношения к делу. Реальный пароль находится в переменной, куда вы помещаете нажатия клавиш.

Практично это или нет, но я не против и не за это. Часто пользователи могут найти это сбивающим с толку, но если есть причины для его реализации, то почему бы и нет.


VJ Reddy

Хороший ответ. 5!

Wendelius

Спасибо ви джей

♥…ЯҠ…♥

Я хочу знать концепцию, стоящую за этим....
например: если я набираю "а", то появляется "XXXX", а если я набираю "Б", то появляется "XXXXXXXX". Он добавляет еще 3 символа для каждого типа символов. Я только хочу знать, как это может быть?

Wendelius

Если вы хотите использовать случайную величину, просто используйте случайный класс, чтобы получить, например, число от 1 до 5. используя это число, повторите символ маски при нажатии клавиши

Jim Jos

Привет,

Lotus notes использует случайный алгоритм для отображения количества символов XXX для каждого введенного ключа. Это уже никогда не будет прежним графом!! Это делается только для того, чтобы люди не узнали, сколько символов в вашем пароле.

Wendelius

Именно это я и хочу сказать. Это может быть статическое число замаскированных символов, случайное число и т. д. Дело не в том, чтобы показать фактическую длину.