Форум: "Компоненты";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];
ВнизКак отловить изменение 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.045 c