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

Вниз

OnClick для Edit’а, если Enabled := False   Найти похожие ветки 

 
Dr. Genius   (2006-09-26 09:42) [0]

Здравствуйте!

Событие OnClick для Edit’а не срабатывает, если св-во Enabled Edit’а установлено в False. Можно ли это исправить?


 
Megabyte ©   (2006-09-26 09:46) [1]

А зачем?


 
Сергей М. ©   (2006-09-26 09:46) [2]


> Можно ли это исправить?


Нельзя.
А зачем вообще это "исправлять" ?
Это же абсолютно нормальная логика - "запрещенный" контрол не должен и не может получить фокус ввода..


 
ЮЮ ©   (2006-09-26 10:10) [3]

Можно. Обработав OnClick parenta.

type
 TControlAccess = class(TControl);

procedure TForm1.Edit1Click(Sender: TObject);
begin
 TEdit(Sender).Tag := TEdit(Sender).Tag + 1;
 Caption := "OnClick " + IntToStr(TEdit(Sender).Tag);
end;

procedure TForm1.FormClick(Sender: TObject);
var
 c: TControl;
 p: TPoint;
begin
 p := Mouse.CursorPos;
 p := ScreenToClient(p);
 c := ControlAtPos(p, true, true);
 if (c <> nil) then
 if not c.Enabled and Assigned(TControlAccess(c).OnClick) then
   TControlAccess(c).Click;
end;

Вопрос, зачем вообще у TEdita обрабатывать OnClick, пусть даже и у доступного



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

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

Наверх




Память: 0.47 MB
Время: 0.046 c
15-1159002956
Furyz
2006-09-23 13:15
2006.10.15
*.bat компиляция


5-1140943637
Reset
2006-02-26 11:47
2006.10.15
Default - значения свойств


2-1159276169
Asdpro
2006-09-26 17:09
2006.10.15
Создание меню из дерева каталогов и файлов


2-1159176559
mfender
2006-09-25 13:29
2006.10.15
AccesViolation в XML


2-1159685512
Roeg
2006-10-01 10:51
2006.10.15
Как вывести чужое окно на передний план?