Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.02.19;
Скачать: CL | DM;

Вниз

Как отловить изменение property Text в компоненте-наследни TEdit   Найти похожие ветки 

 
Akris ©   (2005-08-29 18:45) [0]

Помогите, пожалуйста. Мне нужно форматировать по заданным параметрам значение свойства Text у своего компонента, который я наследовал от стандартного TEdit.
Действия пользователя я перехватываю без проблем.
Проблема возникает тогда, когда я присваиваю свойству значение.
Например: edit имеет формат: 10 цифр и 3 после запятой. Я в программе присваиваю значение из базы данных форматом 5 и 2 после запятой. Результат: edit отображает 5 цифр и 2 после запятой, а евенты на OnKeyPress не дают ввести третью цифру после запятой.

Как решить не знаю.


 
Юрий Зотов ©   (2005-08-29 19:35) [1]

> Как отловить изменение property Text
> в компоненте-наследни TEdit

Вариант 1 - обработать сообщение CM_TEXTCHANGED.
Вариант 2 - перекрыть метод Change.

> евенты на OnKeyPress...

1. Компонент не имеет права использовать события, доступные его пользователю. Иначе он может перекрыть их своими и компонент работать перестанет.

2. Текст можно ввести не только с клавиатуры, но и из буфера обмена.

> ...не дают ввести третью цифру после запятой.

Это уже вопрос алгоритма. Не для этой конференции.


 
Akris ©   (2005-08-30 15:25) [2]

А как перекрыть OnChange? У меня никак не получается.

Заранее благодарен за ответ.


 
Юрий Зотов ©   (2005-08-30 16:19) [3]

Что не получается? Перекрыть метод Change не получается?


 
ALI_YES   (2005-09-01 12:45) [4]

type
 TMyEdit = class (TEdit)
 protected
   procedure Change; override;
 end;

implementation

procedure TMyEdit.Change;
begin
 inherited;
 ShowMessage("Changed");
end;

Попробуй так



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

Текущий архив: 2006.02.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.301 c
15-1138526367
palva
2006-01-29 12:19
2006.02.19
О выборе и оценке криптоалгоритма


15-1138438980
ArtemESC
2006-01-28 12:03
2006.02.19
Файлы chm


2-1138724227
dera
2006-01-31 19:17
2006.02.19
Такая вот проблемка...


15-1138075876
Ozone_zabil_parol
2006-01-24 07:11
2006.02.19
Цифровой фитик. Проблема выбора.


9-1124440416
Dedylka
2005-08-19 12:33
2006.02.19
Шейдеры?