Если посылаю сообщение в открытый комбобокс, то реагирует на него и сам диалог.
Например, можно увидеть в диалоге создания папки, с открытым комбобоксом Link type.
Code: Select all
local F = far.Flags
Macro {
area="Common"; key="F1"; flags="EnableOutput";
action=function()
local DM = F.DM_ENABLEREDRAW
local w = far.AdvControl(F.ACTL_GETWINDOWINFO)
local c = w.Id:send(DM,-1)
local w1 = far.AdvControl(F.ACTL_GETWINDOWINFO,w.Pos-1)
local c1 = w1.Id:send(DM,-1)
far.Show(c,c1)
w.Id:send(DM,0)
c = w.Id:send(DM,-1)
c1 = w1.Id:send(DM,-1)
w.Id:send(DM,1)
far.Show(c,c1)
end;
}
Макрос пытается запретить перерисовку списка.
При этом показывает значения счётчиков обоих окон до попытки, и после неё.
Можно увидеть, что сообщение в комбобокс действует и на сам диалог.
Для сравнения можно повторить тот же эксперимент открыв не комбобокс, а историю текстового поля (в этом же диалоге).
Можно увидеть, что в этом случае поведение другое: меняется только счётчик меню истории.
P.S.
А полез я туда по той причине, что не получается запретить перерисовку комбобокса, вместо этого запрещается перерисовка диалога.