При отключении от сервера происходит событие. Если этим событием вызвать Count (Количество подключенных клиентов) то оно будет устаревшим. Однако если задержать это событие то всё работает правильно. Вот пример:
Add(TCP_Server,1173106,168,119)
{
Port=80
link(onConnect,9086445:doWork2,[])
link(onDisconnect,9086445:doWork3,[(235,139)])
}
Add(TCP_Client,9757672,189,189)
{
Port=80
IP="127.0.0.1"
}
Add(Label,15609451,21,14)
{
Left=10
Top=10
Caption="Connect"
}
Add(Label,3614461,266,126)
{
Left=55
Top=10
Width=55
Caption="0"
link(Text,1173106:Count,[(272,114)(307,114)(307,167)(174,167)])
}
Add(HubEx,9086445,231,126)
{
link(onEvent,3614461:doText,[])
}
Add(Button,15181057,35,189)
{
Left=5
Top=35
Width=75
Caption="Connect"
link(onClick,9757672:doOpen,[])
}
Add(Button,12961369,35,238)
{
Left=5
Top=60
Width=75
Caption="Disconnect"
link(onClick,9757672:doClose,[(128,244)(128,202)])
}
Add(MainForm,9435857,28,77)
{
Width=132
Height=196
link(onCreate,2686287:doEvent1,[])
}
Add(TCP_Server,16635392,504,91)
{
Port=81
link(onConnect,9758591:doWork2,[])
link(onDisconnect,9758591:doWork3,[(571,111)])
}
Add(TCP_Client,15111695,665,161)
{
Port=81
IP="127.0.0.1"
}
Add(Label,5652235,756,98)
{
Left=50
Top=85
Width=55
Caption="0"
link(Text,16635392:Count,[(762,84)(742,84)(742,135)(510,135)])
}
Add(HubEx,9758591,567,98)
{
link(onEvent,12522934:doStart,[])
}
Add(Button,7342934,511,161)
{
Left=5
Top=100
Width=75
Caption="Connect"
link(onClick,15111695:doOpen,[])
}
Add(Button,11619948,511,210)
{
Left=5
Top=125
Width=75
Caption="Disconnect"
link(onClick,15111695:doClose,[(604,216)(604,174)])
}
Add(Hub,2686287,119,91)
{
link(onEvent1,16635392:doOpen,[])
link(onEvent2,1173106:doOpen,[(151,104)(151,125)])
}
Add(Label,5117187,504,28)
{
Left=5
Top=85
Caption="Connect"
}
Add(Sleep,8912347,686,98)
{
Delay=200
link(onSleep,5652235:doText,[])
}
Add(Thread,12522934,616,98)
{
link(onExec,8912347:doSleepMks,[])
}
P.S. используется 80 и 81 порт.
WIN7 x64
HiAsm 4.04 build 184
|
Когда мышь покидает элемент, происходит вот это:
Control.Font.Color := _prop_Font.Color;
а у нас свойство не меняется при doFont
Add(MainForm,2953706,21,105)
{
Width=461
Height=256
link(onCreate,5647903:doFont,[])
}
Add(FontManager,13189003,112,119)
{
ControlManager="1"
}
Add(Label,4545807,154,119)
{
Left=175
Top=115
Name="1"
ColorHover=16711680
}
Add(Font,5647903,70,119)
{
Font=[MS Sans Serif,8,0,255,1]
link(onFont,13189003:doSetFont,[])
}
Через свойство ControlManager нет доступа к свойствам и переменным самого управляемого элемента. Исправить, на данные момент, не представляется возможным
|