Ravilr писал(а):
при окончании выполнение метода doShowModal, дочерняя форма просто уничтожается.нет, она не уничтожается и не перезапускается (ток что провёл небольшой эксперимент).
Эксперимент №1:
Add(MainForm,12532610,325,162)
{
Width=403
Height=245
Caption="Пример"
Position=1
link(onCreate,4916086:doEvent1,[])
}
Add(BlockFind,6144790,492,405)
{
IncludeBlock=1
StartBlock="<sys>"
EndBlock="</sys>"
link(onSearch,1267441:doEvent1,[])
}
Add(LineBreak,297105,319,405)
{
Caption="Принятые данные с сервера"
link(Out,6144790:doSearch,[])
Primary=[9974996,405,-46]
}
Add(Button,11993697,502,366)
{
Left=167
Top=90
Width=65
Font=[Arial,8,0,0,204]
Caption="Пример"
link(onClick,10215024:doShowModal,[])
}
Add(ChildFormEx,10215024,575,366)
{
Mode=2
link(отправить,16389079:doEvent1,[])
link(Str2,7795866:Var2,[])
}
BEGIN_SDK
Add(EditMultiEx,12573465,21,21)
{
WorkCount=#11:doShowModal|2:In|
EventCount=#9:отправить|
DataCount=#4:Str2|
Width=349
Height=291
link(doShowModal,11539543:doShowModal,[(33,27)(33,111)])
link(In,9974996:In,[])
}
Add(MainForm,11539543,105,77)
{
Left=35
Top=105
Width=302
Height=161
Visible=1
Caption="Пример"
Position=1
Point(doShowModal)
link(onCreate,13662301:doEvent1,[])
}
Add(FormatStr,3228639,180,98)
{
DataCount=0
Mask="<sys>данные</sys>"
link(onFString,12043928:doWork,[])
}
Add(LineBreak,7371283,42,230)
{
Caption="входящии данные"
link(Out,10822052:doMessage,[])
Primary=[9974996,0,-202]
}
Add(LineBreakEx,12043928,226,98)
{
Caption="отправка запроса"
}
Add(LineBreakEx,11013808,249,21)
{
Caption="отправка запроса"
Type=1
link(OnEvent,12573465:отправить,[])
}
Add(Label,15714018,235,237)
{
Left=105
Top=40
Width=77
Height=28
Font=[MS Sans Serif,14,1,0,1]
Caption="И всё..."
}
Add(Message,10822052,170,230)
{
}
Add(StrCatDelim,6944786,60,77)
{
Delimiter=": "
Str1="кл-во событий"
link(onStrCatDlm,11539543:doCaption,[])
link(Str2,12573465:Str2,[(73,49)(27,49)])
}
Add(Hub,13662301,148,91)
{
link(onEvent1,6944786:doStrCatDlm,[(174,97)(174,90)(48,90)(48,83)])
link(onEvent2,3228639:doString,[])
}
END_SDK
Add(TCP_Client,8912125,680,359)
{
Port=71888
IP="127.0.0.1"
link(onRead,9974996:In,[])
}
Add(Hub,16389079,629,366)
{
link(onEvent1,8912125:doOpen,[(661,372)(661,365)])
link(onEvent2,8912125:doSend,[])
}
Add(TCP_Server,9064983,532,504)
{
Port=71888
link(onRead,4129968:doSeparateMT,[])
}
Add(LineBreak,10873750,322,504)
{
Caption="Принятые данные с клиента"
link(Out,13555939:doEvent1,[])
Primary=[7068180,297,0]
}
Add(LineBreak,16134263,418,519)
{
Caption="startserver"
link(Out,13555939:doEvent2,[(489,525)(489,517)])
Primary=[4511257,-22,-343]
}
Add(Hub,13555939,495,504)
{
InCount=2
link(onEvent1,9064983:doOpen,[])
link(onEvent2,9064983:doSend,[(521,517)(521,524)])
}
Add(InfoTip,12847072,315,210)
{
Info=#16:Клиентская часть|
Width=589
Height=242
}
Add(InfoTip,11494280,315,455)
{
Info=#15:Серверная часть|
Width=505
Height=137
}
Add(MT_MultiData,4129968,575,504)
{
Count=1
link(onData1,7068180:In,[])
}
Add(Hub,4916086,368,176)
{
link(onEvent1,4511257:In,[])
link(onEvent2,16380555:doStart,[(391,189)(391,329)])
}
Add(Hub,1267441,533,405)
{
link(onEvent1,287775:doNext,[(561,411)(561,243)])
link(onEvent2,10215024:In,[(568,418)(568,379)])
}
Add(Counter,287775,575,237)
{
Max=1410065407
}
Add(Thread,16380555,448,323)
{
Delay=15
BusyEvent=1
link(onExec,6944786:doStrCatDlm,[])
}
Add(StrCatDelim,6944786,512,323)
{
Delimiter=":"
Str1="кл-во событий"
link(onStrCatDlm,6340914:In,[])
link(Str2,7795866:Var1,[(525,296)])
}
Add(LineBreak,6298499,247,162)
{
Caption="SetCaption"
link(Out,12532610:doCaption,[])
Primary=[6340914,319,161]
}
Add(GetDataEx,7795866,575,291)
{
link(Data,287775:Count,[])
}
Эксперимент №2:
Add(MainForm,12532610,325,162)
{
Width=403
Height=245
Caption="Пример"
Position=1
link(onCreate,4511257:In,[])
}
Add(BlockFind,6144790,499,286)
{
IncludeBlock=1
StartBlock="<sys>"
EndBlock="</sys>"
link(onSearch,10215024:In,[(549,292)(549,253)])
}
Add(LineBreak,297105,326,286)
{
Caption="Принятые данные с сервера"
link(Out,6144790:doSearch,[])
Primary=[9974996,391,-53]
}
Add(Button,11993697,495,240)
{
Left=167
Top=90
Width=65
Font=[Arial,8,0,0,204]
Caption="Пример"
link(onClick,10215024:doShowModal,[])
}
Add(ChildFormEx,10215024,568,240)
{
Mode=2
link(отправить,16389079:doEvent1,[])
}
BEGIN_SDK
Add(EditMultiEx,12573465,21,21)
{
WorkCount=#11:doShowModal|2:In|
EventCount=#9:отправить|
Width=349
Height=193
link(doShowModal,11539543:doShowModal,[(63,27)(63,111)])
link(In,9974996:In,[])
}
Add(MainForm,11539543,105,77)
{
Left=35
Top=105
Width=302
Height=161
Visible=1
Caption="Пример"
Position=1
Point(doShowModal)
link(onCreate,13662301:doEvent1,[])
}
Add(FormatStr,3228639,180,98)
{
DataCount=0
Mask="<sys>данные</sys>"
link(onFString,12043928:doWork,[])
}
Add(LineBreak,7371283,49,153)
{
Caption="входящие данные"
link(Out,10822052:doMessage,[])
Primary=[9974996,-7,-125]
}
Add(LineBreakEx,12043928,226,98)
{
Caption="отправка запроса"
}
Add(LineBreakEx,11013808,242,21)
{
Caption="отправка запроса"
Type=1
link(OnEvent,12573465:отправить,[])
}
Add(Label,15714018,242,160)
{
Left=105
Top=40
Width=77
Height=28
Font=[MS Sans Serif,14,1,0,1]
Caption="И всё..."
}
Add(Message,10822052,177,153)
{
}
Add(Hub,13662301,148,91)
{
link(onEvent1,16380555:doStart,[(168,97)(168,69)])
link(onEvent2,3228639:doString,[])
}
Add(Thread,16380555,177,63)
{
Delay=30
BusyEvent=1
link(onExec,287775:doNext,[])
}
Add(Counter,287775,225,63)
{
Max=1410065407
link(onNext,11539543:doCaption,[(269,69)(269,53)(93,53)(93,83)])
}
END_SDK
Add(TCP_Client,8912125,673,233)
{
Port=71888
IP="127.0.0.1"
link(onRead,9974996:In,[])
}
Add(Hub,16389079,622,240)
{
link(onEvent1,8912125:doOpen,[(654,246)(654,239)])
link(onEvent2,8912125:doSend,[])
}
Add(TCP_Server,9064983,532,385)
{
Port=71888
link(onRead,4129968:doSeparateMT,[])
}
Add(LineBreak,10873750,322,385)
{
Caption="Принятые данные с клиента"
link(Out,13555939:doEvent1,[])
Primary=[7068180,297,0]
}
Add(LineBreak,16134263,418,400)
{
Caption="startserver"
link(Out,13555939:doEvent2,[(489,406)(489,398)])
Primary=[4511257,-36,-224]
}
Add(Hub,13555939,495,385)
{
InCount=2
link(onEvent1,9064983:doOpen,[])
link(onEvent2,9064983:doSend,[(521,398)(521,405)])
}
Add(InfoTip,12847072,315,210)
{
Info=#16:Клиентская часть|
Width=589
Height=130
}
Add(InfoTip,11494280,315,343)
{
Info=#15:Серверная часть|
Width=505
Height=109
}
Add(MT_MultiData,4129968,575,385)
{
Count=1
link(onData1,7068180:In,[])
}