Текущий архив: 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.44 MB
Время: 0.042 c