Скачал Lazarus 0.9.29 r24055 FPC 2.4.1 i386-win32-win32/win64 Windows XP SP2.
Ничего не изменилось.
???
По сути происходящего у меня.
Когда кликаешь мышой в инспекторе объектов по пункту OnExit, то создается процедура Edit1Exit и Edit2Exit соответсвено.
Прошелся по вызовам, обнаружил, что не срабатывает вот тут
- Код: Выделить всё
procedure TWinControl.WMKillFocus(var Message: TLMKillFocus);
var
ParentForm: TCustomForm;
begin
//DebugLn('TWinControl.WMKillFocus A ',Name,':',ClassName);
Assert(False, Format('Trace: %s', [ClassName]));
if [csLoading,csDestroying,csDesigning]*ComponentState=[] then
begin
if Self is TCustomForm then
begin
if TCustomForm(Self).Active then
begin
EditingDone;
DoExit;
end;
end else
begin
ParentForm := GetParentForm(Self);
if Assigned(ParentForm) and
ParentForm.Active then
begin
EditingDone;
DoExit;
end;
end;
end;
end;
Вот этот участок кода:
- Код: Выделить всё
if Assigned(ParentForm) and
ParentForm.Active then
begin
EditingDone;
DoExit;
end;
ParentForm.Active - всегда False.
Потому, эти процедуры
- Код: Выделить всё
EditingDone;
DoExit;
Никогда не вызываются.
???