Вверх ↑
Ответов: 1925
Рейтинг: 172
#1: 2019-01-24 18:33:54 ЛС | профиль | цитата
BaseD писал(а):
при сворачивании состояние все равно 1, а я так понял, должно быть 0.

Проблема в ф-ции IsIconic. https://stackoverflow.com/questions/26352976/isiconic-always-return-false-and-openicon-never-open-the-window/26374237#26374237

Но события в нашем KOLе тоже фигня. Вот простой кодик:

Add(MainForm,11597647,308,140)
{
Point(Handle)
Point(PHandle)
}
Add(Message,5193008,364,196)
{
}
Add(InlineCode,5530690,315,196)
{
EventPoints=#10:OnMinimize|10:OnMaximize|9:OnRestore|
DataPoints=#7:PHandle|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|19: procedure Init;|39: procedure _OnMinimize(Sender:PObj);|39: procedure _OnMaximize(Sender:PObj);|38: procedure _OnRestore(Sender:PObj);|9: public|22: PHandle:THI_Event;|25: OnMinimize:THI_Event;|25: OnMaximize:THI_Event;|24: OnRestore:THI_Event;|23: constructor Create;|5: end;|0:|14:implementation|0:|31:constructor THiAsmClass.Create;|5:begin|18: inherited Create;|15: InitAdd(Init);|4:end;|0:|27:procedure THiAsmClass.Init;|15:var c:PControl;|5:begin|40: c := PControl(ToIntegerEvent(PHandle));|29: c.OnMinimize := _OnMinimize;|29: c.OnMaximize := _OnMaximize;|27: c.OnRestore := _OnRestore;|4:end;|0:|34:procedure THiAsmClass._OnMinimize;|5:begin|25: _hi_OnEvent(OnMinimize);|4:end;|0:|34:procedure THiAsmClass._OnMaximize;|5:begin|25: _hi_OnEvent(OnMaximize);|4:end;|0:|33:procedure THiAsmClass._OnRestore;|5:begin|24: _hi_OnEvent(OnRestore);|4:end;|0:|4:end.|
link(PHandle,11597647:PHandle,[])
link(OnMinimize,5193008:doMessage,[])
}

На клик по кнопке в панели задач не реагирует, на двойной клик по заголовку (развёртывание) не реагирует, на восстановление из свёрнутого тоже реакции 0. Чудо в перьях, в общем. Наверное, Dilma в своё время из-за этого эти события и не добавил в компоненты.
карма: 9
0