
Загнал свой пример в дочернюю форму - всё нормально работает.
Загнал в панель - тоже нормально.
Что ты делаешь - непонятно.
Где-то ты нарушил порядок следования событий.
user_asm писал(а):
Вот что сейчас в моей схеме:Вот что сейчас должно быть в твоей схеме:
Add(ChildPanelEx,13970209,140,119)
{
}
BEGIN_SDK
Add(EditMultiEx,15156336,21,21)
{
@Group=50964304
WorkCount=#6:doData|
VarCount=#19:ResRD=Значение даты|
Width=286
Height=165
link(doData,7975239:doConvert,[(38,27)(38,125)])
link(ResRD,12474190:GetData,[(27,179)(139,179)])
}
Add(DatePicker,1277244,63,77)
{
@Group=50964304
Top=-1
Width=104
Height=21
Ctl3D=0
AlignPicker=1
SetDateOnChange=1
Point(DateTime)
link(onChange,15224980:doWork2,[])
}
Add(Panel,16214912,259,112)
{
@Group=50964304
Top=55
Width=128
Height=20
}
Add(HubEx,15224980,150,77)
{
@Group=50964304
link(onEvent,528079:doWork,[])
}
Add(InlineCode,528079,182,77)
{
@Group=50964304
WorkPoints=#6:doWork|
EventPoints=#4:Init|6:toBack|7:toFront|0:|
VarPoints=#5:ResRD|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|14: Rd:integer;|3: |9: public|36: init, toBack, toFront: THI_Event;|45: procedure ResRd(var dt:TData; Index:Word);|49: procedure doWork(var _Data:TData; Index:Word);|3: |5: end;|0:|14:implementation|0:|29:procedure THiAsmClass.doWork;|5:BEGIN|29: Rd := Trunc(toReal(_Data));|16: If Rd<>0 then |8: begin|44: _hi_onEvent(init,Rd); // установить дату|36: _hi_onEvent(toBack); // открыть|6: end|40: else _hi_onEvent(toFront); // скрыть|4:END;|0:|28:procedure THiAsmClass.ResRd;|5:BEGIN|19: dtInteger(dt,Rd);|5:END; |4:end.|
link(Init,1277244:doSetDate,[(228,83)(228,61)(51,61)(51,83)])
link(toBack,12748076:doSendToBack,[])
link(toFront,12748076:doBringToFront,[])
}
Add(DateConvertor,7975239,63,119)
{
@Group=50964304
Mode=8
Format="yyyy-MM-dd"
link(onResult,15224980:doWork3,[(154,125)])
}
Add(DateConvertor,12121190,182,140)
{
@Group=50964304
Mode=9
Format="yyyy-MM-dd"
Point(Data)
link(onResult,12474190:doData,[(226,146)(226,134)(121,134)(121,146)])
link(Data,528079:ResRD,[])
}
Add(EventFromData,12474190,133,140)
{
@Group=50964304
link(onEvent,12121190:doConvert,[])
}
Add(Edit,12748076,259,70)
{
@Group=50964304
Left=3
Top=2
Width=85
Height=15
Color=255
Text=""
ReadOnly=0
Point(doSendToBack)
Point(doBringToFront)
}
Add(Button,2902524,64,21)
{
@Group=50964304
Left=105
Width=20
WinStyle=1
Caption="X"
Data=String()
link(onClick,15224980:doWork1,[(154,27)])
}
END_SDK
------------ Дoбавленo в 11.07:
P.S. И не удаляй кнопку с крестиком. Если человек не там открыл дату, как её уничтожить ???????