InputBox для ввода пароляDelphi , Синтаксис , ПаролиInputBox для ввода пароля
Оформил: DeeCo const InputBoxMessage = WM_USER + 200; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private procedure InputBoxSetPasswordChar(var Msg: TMessage); message InputBoxMessage; public end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.InputBoxSetPasswordChar(var Msg: TMessage); var hInputForm, hEdit, hButton: HWND; begin hInputForm := Screen.Forms[0].Handle; if (hInputForm <> 0) then begin hEdit := FindWindowEx(hInputForm, 0, 'TEdit', nil); { // Change button text: hButton := FindWindowEx(hInputForm, 0, 'TButton', nil); SendMessage(hButton, WM_SETTEXT, 0, Integer(PChar('Cancel'))); } SendMessage(hEdit, EM_SETPASSWORDCHAR, Ord('*'), 0); end; end; procedure TForm1.Button1Click(Sender: TObject); var InputString: string; begin PostMessage(Handle, InputBoxMessage, 0, 0); InputString := InputBox('Input Box', 'Please Enter a Password', ''); end; Программный код, который вы предоставили, - это приложение Delphi, созданное с использованием Windows API для поиска и манипуляции контролем редактирования и кнопкой в окне ввода пароля. Вот подробное описание того, что каждый раздел кода делает: Объявления констант и типов
Объявления переменных
Секция реализации
Альтернативное решение Если вы хотите упростить код и избежать использования функций Windows API, таких как
В этом примере мы определили отдельную функцию Это решение более простое и легче поддерживать, чем использование функций Windows API, но может не предоставлять такое же управление над видом и поведением окна ввода пароля. В статье описывается пример создания интерфейса для ввода пароля в приложении на языке Delphi с использованием сообщения WM_USER + 200 и метода EM_SETPASSWORDCHAR. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |