Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Как скрывать вводимые символы?


Автор: TP@MB@Y 18.6.2005, 18:49
Как сделать такой ввод? Чтоб например вместо символов были звездочки?

Автор: Pakshin A. S. 18.6.2005, 18:51
MaskEdit... Свойство Mask...

Автор: Poseidon 18.6.2005, 18:54
А куда вводишь-то? А edit? Ну, как вориант, можно так:
Код
var Pass: string;
...

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
Pass:= Pass + Key;
Key:= chr(0);
Edit1.Text:= Edit1.Text +'*';
end;

В коде много недороботок, но, для наглядности, думаю пойдет.
Добавлено @ 18:55
Pakshin A. S., точно, точно. Что-то я стормозил

Автор: TP@MB@Y 18.6.2005, 19:03
Poseidon
Принцип понял. Спасибо.


Pakshin A. S.
У MaskEdit такая фигня есть из-за которой я отказался от него. Там если ввод короче заданой длнинны, то строка дополняется пробелами (насколько правильно я понял).

Автор: Pakshin A. S. 18.6.2005, 19:06
Если длина не фиксировання, то мона вот это:
Свойство PasswordChar у тогоже MaskEdit'а... ставишь тама к примеру *...
Добавлено @ 19:07
Получаешь пароль как обычно через Text...

Автор: p0s0l 18.6.2005, 21:19
Цитата(Pakshin @ 18.6.2005, 18:51)
MaskEdit... Свойство Mask...
MaskEdit обозван так не из-за того, что он маскирует вводимыве символы, а из-за того, что позволяет сделать ввод по маске - а это разные вещи smile
Свойство PasswordChar есть и у обычного TEdit, так что юзай его, TP@MB@Y...

Автор: Pakshin A. S. 18.6.2005, 21:58
smile забыл... smile smile smile

Автор: TP@MB@Y 18.6.2005, 22:40
p0s0l
Опа! Оказывается решение было под носом и на блюдичке с голубой коемочкой smile
Спасибо!!!

Автор: Rrader 19.6.2005, 07:25
Вот наиболее быстрый код (особенно если Edit создается на WinAPI). smile
Код

SendMessage(Edit1.Handle, EM_SETPASSWORDCHAR, Ord('*'), 0);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)