Вверх ↑
Ответов: 2415
Рейтинг: 691
#1: 2025-05-14 14:26:51 ЛС | профиль | цитата
3042, при том способе что я предложил, достаточно предупредить что AppWindow при поиске дочерних окон нет смысла использовать. При твоем способе придется давать описание к каждому свойству и что в результате получится. Как по мне это запутает. Вот к примеру можно легко переключить одно свойство:

Add(MainForm,14047676,63,231)
{
Width=842
Height=761
link(onCreate,1905618:doDeferredEvent,[])
}
Add(WinEnum,4438343,252,280)
{
VisibleOnly=3
Point(doVisibleOnly)
Point(doEnumChildWindows)
Point(onEnumChildWindows)
Point(ParentHandle)
link(onFindWindow,1191528:doData,[])
link(onEndEnum,1829594:doEvent,[(296,293)(296,405)])
link(onEnumChildWindows,11581316:doSeparateMT,[])
link(ParentHandle,11373653:Var,[])
}
Add(DeferredEvent,1905618,112,245)
{
Delay=1000
link(onDeferredEvent,1321535:doEvent1,[])
}
Add(WinInfo,12732599,448,280)
{
Point(Left)
Point(Top)
Point(Width)
Point(Height)
Point(IsZoomed)
Point(IsEnabled)
link(onWinInfo,3935752:doOperation,[])
}
Add(StringTable,14023005,686,343)
{
Left=5
Width=810
Height=215
Font=[MS Sans Serif,12,0,0,1]
Columns=#4:№=40|6:Handle|9:ClassName|11:Caption=200|7:Left=60|8:Right=60|8:Width=60|9:Height=60|9:Zoomer=60|9:Enable=60|
Grid=0
Point(doSelect)
Point(onSelect)
Point(Strings)
link(onSelect,3921252:doRead,[(731,356)(731,383)(688,383)(688,398)])
}
Add(FormatStr,1037894,434,343)
{
DataCount=10
Mask="%1;%2;%3;%4;%5;%6;%7;%8;%9;%10"
link(onFString,5145947:doEvent,[])
link(Str1,5438494:Var1,[(440,327)])
link(Str3,12732599:ClassName,[])
link(Str4,12732599:Caption,[])
link(Str5,12732599:Left,[])
link(Str6,12732599:Top,[])
link(Str7,12732599:Width,[])
link(Str8,12732599:Height,[])
link(Str9,12732599:IsZoomed,[])
link(Str10,12732599:IsEnabled,[])
}
Add(Hub,1321535,161,245)
{
OutCount=4
link(onEvent1,350050:In,[])
link(onEvent2,2077792:doWork2,[])
link(onEvent3,3616204:In,[])
link(onEvent4,4438343:doEnum,[(183,272)(183,286)])
}
Add(Math,3935752,532,280)
{
Op2=1
Point(doClear)
link(Op1,5438494:Var3,[(538,268)(572,268)(572,327)])
}
Add(LineBreak,4274213,644,350)
{
Caption="cl"
link(Out,14023005:doClear,[])
Primary=[350050,-455,-105]
}
Add(ArrayRW,3921252,700,392)
{
link(onRead,1465603:doEvent1,[])
link(Array,14023005:Strings,[])
}
Add(MultiStrPart,2770466,833,392)
{
From=1
Count=1
}
Add(StringTable,16112192,644,441)
{
Top=510
Width=820
Height=205
Font=[MS Sans Serif,12,0,0,1]
Columns=#4:№=40|6:Handle|9:ClassName|11:Caption=200|7:Left=60|8:Right=60|8:Width=60|9:Height=60|9:Zoomer=60|9:Enable=60|
Grid=0
Point(doSelect)
Point(onSelect)
Point(Strings)
}
Add(IndexToChanel,5145947,595,343)
{
Point(Index)
link(onEvent1,14023005:doAdd,[])
link(onEvent2,16112192:doAdd,[(634,356)(634,447)])
link(Index,7512963:Var2,[])
}
Add(Hub,1465603,742,392)
{
link(onEvent1,2770466:doSplit,[])
link(onEvent2,13803493:doDeferredEvent,[(776,405)(776,535)(97,535)(97,307)])
}
Add(LineBreak,12527530,595,448)
{
Caption="cl"
link(Out,16112192:doClear,[])
Primary=[3249323,-406,-133]
}
Add(ChanelToIndex,4679386,553,196)
{
link(onIndex,916844:doValue,[])
}
Add(Memory,916844,595,196)
{
}
Add(DoData,7050091,574,399)
{
Data=Integer(0)
link(onEventData,14023005:doSelect,[(669,405)(669,370)])
AddHint(1,-20,21,13,Data)
}
Add(Hub,7612201,154,301)
{
OutCount=5
link(onEvent1,2251218:In,[])
link(onEvent2,2077792:doWork3,[(228,314)])
link(onEvent3,3249323:In,[])
link(onEvent4,13990997:doData,[(178,328)(178,377)])
link(onEvent5,4438343:doEnumChildWindows,[(246,335)(246,314)])
}
Add(LineBreak,6613382,511,196)
{
Caption="0"
link(Out,4679386:doWork1,[])
Primary=[3616204,-322,63]
}
Add(LineBreak,2435114,511,210)
{
Caption="1"
link(Out,4679386:doWork2,[(547,216)(547,209)])
Primary=[2251218,-322,91]
}
Add(DoData,1191528,350,280)
{
link(onEventData,10596749:doEvent1,[])
link(Data,4438343:Handle,[(356,270)(338,270)(338,334)(258,334)])
}
Add(MT_MultiData,11581316,308,294)
{
From=1
Count=1
link(onData1,10596749:doEvent2,[(391,300)(391,293)])
}
Add(Hub,10596749,399,280)
{
InCount=2
link(onEvent1,12732599:doWinInfo,[])
link(onEvent2,1037894:doString,[(420,293)(420,349)])
}
Add(GetDataEx,5438494,532,322)
{
link(Data,3935752:Result,[])
}
Add(DeferredEvent,13803493,112,301)
{
link(onDeferredEvent,7612201:doEvent1,[])
}
Add(StrCat,9250914,637,490)
{
Str1="Дочерних окон: "
link(onStrCat,9514022:doText,[])
link(Str2,16112192:Count,[])
}
Add(Label,9514022,686,490)
{
Left=5
Top=475
Width=814
Height=24
Color=-16777196
Font=[MS Sans Serif,12,0,0,1]
Caption=""
AutoSize=1
Alignment=2
}
Add(IndexToChanel,1829594,518,399)
{
Point(Index)
link(onEvent1,7050091:doData,[])
link(onEvent2,9250914:doStrCat,[(568,412)(568,496)])
link(Index,7512963:Var1,[(524,334)])
}
Add(GetDataEx,7512963,595,329)
{
link(Data,916844:Value,[])
}
Add(LineBreak,9894912,924,462)
{
Caption="parent"
Type=1
link(Data,13991947:Var3,[(930,439)])
Primary=[11373653,-665,-210]
}
Add(DoData,13990997,189,371)
{
Data=Integer(0)
link(onEventData,4438343:doVisibleOnly,[(237,377)(237,307)])
AddHint(1,-22,21,13,Data)
}
Add(GetDataEx,13991947,833,434)
{
link(Data,2770466:Part1,[])
}
Add(ScreenShort,6248627,833,455)
{
link(onCapture,12279222:doLoad,[])
link(Handle,13991947:Var2,[])
}
Add(Timer,15710297,784,455)
{
Interval=300
link(onTimer,6248627:doCapture,[])
}
Add(Image,12279222,882,455)
{
Left=190
Top=245
Width=407
Height=227
Color=-16777212
}
Add(HubEx,2077792,224,252)
{
link(onEvent,3935752:doClear,[(518,258)(518,293)])
}

При твоем способе придется изменять не одно свойство, а несколько, что тоже как по мне сложнее в использовании элемента.

Вот поменять название с Show, на SizeNoZero идея хорошая (show менее информативное).

Давай подождем, может кто поддержит один из наших подходов или предложит свой.
карма: 11

0