Вниз
Скачать: CL | DM;

PasswordChar для TEdit   Найти похожие ветки 

 
harisma ©   (2009-09-10 19:27) [0]

Есть такая пропертя у TEdit, как PasswordChar. Если ее значение отличное от #0, то текст в этом контроле будет отображаться этим символом. Собственно все вышесказанное - не секрет для программистов.

Мой компонент напрямую порожден от TCustomEdit.
Согласно исходникам, при установке PasswordChar генерируется и отсылается сообщение EM_SETPASSWORDCHAR (метод SetPasswordChar)

Проблема в том, что на некоторых компьютерах почему-то не происходит замены введенного текста в эдите на символы PasswordChar. Может кто знает причину?

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


 
Terminal Name   (2009-09-10 19:39) [1]

> Мой компонент напрямую порожден от TCustomEdit


> Проблема в том, что на некоторых компьютерах ...

А как себя ведет стандарный TEdit на этих компьютерах?
Если нормально, то следует поискать причины в твоем компоненте


 
harisma ©   (2009-09-11 14:09) [2]

Обычный дельфийский TEdit работает нормально.
Какая может быть причина в моем компоненте, если именно эту пропертю я не трогал и она напрямую наследуется от предка?


 
clickmaker ©   (2009-09-11 14:12) [3]

> как обрабатывается это сообщение и каким образом меняется
> отображение введенного текста на символы пароля

это уже в недрах виндозного контрола класса Edit.
Скорей всего, косяк именно в унаследованном компоненте


 
harisma ©   (2009-09-11 14:37) [4]

А можно как-то по другому написать обработчик сообщения EM_SETPASSWORDCHAR в своем компоненте? Но для этого надо знать, как оно в недрах винды обрабатывается :(


 
clickmaker ©   (2009-09-11 14:50) [5]

а зачем нужен свой обработчик?
к тому же его обрабатывает не компонент, а оконная процедура виндозного контрола. Компонент шлет ему это сообщение при установке свойства.


 
harisma ©   (2009-09-11 15:09) [6]


> Компонент шлет ему это сообщение при установке свойства.

Я это понял. Просто было интересно, как оно сделано и может просто переписать у себя.

Просто если бы был косяк в самом наследованном компоненте, то не отображалось бы ни на одной машине, а так только на нескольких - странно все это :(


 
Игорь Шевченко ©   (2009-09-11 19:54) [7]

телепатов ищешь ? Не то место, попробуй в другом



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.007 c
2-1313585266
Antoxa
2011-08-17 16:47
2011.12.04
Load/Save ListView


4-1252480292
TarenoKostanay
2009-09-09 11:11
2011.12.04
Имя процесса


4-1252659169
istok20
2009-09-11 12:52
2011.12.04
получить session id из process id..


2-1313070866
лекс01
2011-08-11 17:54
2011.12.04
создание категорий меню и размещение компанентов


6-1206535564
XAOC
2008-03-26 15:46
2011.12.04
получить письмо в windows1251




   Наверх