Вверх ↑
Ответов: 263
Рейтинг: 18
#1: 2022-07-21 14:06:58 ЛС | профиль | цитата
nesco писал(а):
у меня нет никакого мерцания при изменении размера

Я проверяю на разных компьютерах\ноутбуках, поведение везде одинаковое.

nesco, хоть Вы и не любите старый добрый StringTableMT, я сравнил его поведение с MTStrTbl
Видео
MTStrTbl мерцает сильней без исправления кода, а с исправлением - также как и StringTableMT + глючит отрисовка строк при увеличении размера.
Схема


Add(MainForm,16094119,105,182)
{
Width=695
Height=350
Caption="С патчем c исправлением кода"
link(onCreate,7418820:doResize,[])
}
Add(ChildPanel,12487867,182,182)
{
link(onEvent1,7418820:doEvent1,[])
link(onEvent2,7418820:doEvent11,[])
}
BEGIN_SDK
Add(EditMulti,16445913,21,21)
{
EventCount=2
Width=146
Height=228
}
Add(Panel,8092939,35,28)
{
Width=121
Height=311
Align=1
ModeSp=3
}
Add(Button,11035052,35,63)
{
Left=20
Top=10
Width=80
Caption="30 строк"
link(onClick,16445913:onEvent1,[(117,69)(117,27)])
}
Add(Button,12204792,35,98)
{
Left=20
Top=40
Width=80
Caption="Очистить"
link(onClick,16445913:onEvent2,[(117,104)(117,34)])
}
END_SDK
Add(StyleXP,5612224,56,182)
{
}
Add(ChildPanelEx,7418820,231,182)
{
}
BEGIN_SDK
Add(EditMultiEx,12121787,21,21)
{
WorkCount=#8:doEvent1|9:doEvent11|8:doResize|
link(doEvent1,13775491:doEvent1,[(35,27)(35,55)])
link(doEvent11,15661481:doEvent1,[(35,34)(35,104)])
link(doResize,15014532:doResize,[(59,41)(59,153)])
}
Add(Panel,6139585,161,98)
{
Left=121
Width=558
Height=311
Align=5
}
Add(ChildPanel,16013350,98,49)
{
}
BEGIN_SDK
Add(EditMulti,5153088,21,21)
{
WorkCount=2
Width=615
Height=347
link(doWork1,13517961:doFor,[(45,27)(45,223)])
link(doWork2,16680851:doEvent1,[(45,34)(45,97)])
}
Add(Panel,4232779,154,35)
{
Left=121
Width=280
Height=310
Layout="parent.01"
WidthScale=50
}
Add(MTStrTbl,8318156,98,35)
{
Left=2
Top=30
Width=276
Height=278
Align=5
Name="Tabl1"
Columns=#5:№ п\п|1:1|1:2|1:3|1:4|1:5|1:6|1:7|1:8|1:9|
}
Add(For,13517961,77,217)
{
End=30
link(onEvent,13760527:doString,[])
link(onStop,9888664:doEvent2,[(130,230)(130,293)])
}
Add(MST_RowAction,14020333,581,280)
{
MSTControl="Tabl1"
}
Add(MST_Clear,4406358,147,91)
{
MSTControl="Tabl1"
}
Add(MT_String,860943,532,280)
{
link(onResult,14020333:doRowAction,[])
}
Add(FormatStr,13760527,140,217)
{
DataCount=9
Mask="%1;%2;%3;%4;%5;%6;%7;%8;%9"
link(onFString,6117003:doAdd,[])
link(Str1,12514779:Var1,[(146,201)])
link(Str2,12514779:Var2,[])
link(Str3,6727075:Var2,[])
link(Str4,8770803:Var2,[])
link(Str5,3231000:Var2,[])
link(Str6,7385015:Var2,[])
link(Str7,6643269:Var2,[])
link(Str8,2317901:Var2,[])
link(Str9,13198027:Var2,[])
}
Add(EventFromData,11037860,203,154)
{
link(onEvent,4000312:doRandom,[])
}
Add(Random,4000312,259,154)
{
Min=1000
Max=10000
link(onRandom,11037860:doData,[(303,160)(303,148)(191,148)(191,160)])
}
Add(GetDataEx,6727075,154,196)
{
Angle=1
link(Data,8770803:Var1,[])
}
Add(GetDataEx,8770803,161,196)
{
Angle=1
link(Data,3231000:Var1,[])
}
Add(GetDataEx,3231000,168,196)
{
Angle=1
link(Data,7385015:Var1,[])
}
Add(GetDataEx,7385015,175,196)
{
Angle=1
link(Data,6643269:Var1,[])
}
Add(GetDataEx,6643269,182,196)
{
Angle=1
link(Data,2317901:Var1,[])
}
Add(GetDataEx,2317901,189,196)
{
Angle=1
link(Data,13198027:Var1,[])
}
Add(GetDataEx,13198027,196,196)
{
Angle=1
link(Data,11037860:GetData,[(209,201)])
}
Add(GetDataEx,12514779,147,196)
{
Angle=1
link(Data,6727075:Var1,[])
}
Add(StrList,6117003,357,217)
{
}
Add(Hub,16680851,77,91)
{
link(onEvent1,4406358:doClear,[])
link(onEvent2,6117003:doClear,[(330,104)(330,230)])
}
Add(ChildPanel,7038444,140,280)
{
link(onEvent1,9888664:doEvent1,[])
}
BEGIN_SDK
Add(EditMulti,7557279,21,21)
{
EventCount=1
VarCount=1
link(Var1,1332068:Text,[(27,151)(216,151)])
}
Add(Panel,10940747,56,49)
{
Left=2
Top=2
Width=276
Height=28
Align=2
BevelInner=0
}
Add(Edit,1332068,210,49)
{
Left=20
Top=5
Width=85
Text=""
link(onChange,7557279:onEvent1,[(282,55)(282,27)])
}
Add(Button,14780004,147,49)
{
Left=110
Top=6
Caption="сброс"
link(onClick,1332068:doText,[])
}
Add(Label,14227177,56,91)
{
Left=175
Top=10
Caption="MTStrTbl"
}
END_SDK
Add(Hub,9888664,189,280)
{
InCount=2
OutCount=3
link(onEvent1,13982878:doClear,[])
link(onEvent2,13503697:doString,[])
link(onEvent3,15305743:doEnum,[])
}
Add(MST_Clear,13982878,217,280)
{
MSTControl="Tabl1"
}
Add(FormatStr,13503697,287,287)
{
DataCount=1
Mask="*%1*"
link(onFString,14773555:doMask,[])
link(Str1,7038444:Var1,[(293,272)(261,272)(261,324)(146,324)])
}
Add(StrMask,14773555,434,280)
{
Point(doMask)
link(onTrue,6563615:doString,[])
}
Add(ArrayEnum,15305743,371,294)
{
link(onItem,14773555:doCompare,[(419,300)(419,286)])
link(Array,6117003:Array,[])
}
Add(FormatStr,6563615,483,287)
{
Mask="%1;%2"
link(onFString,860943:doMT,[])
link(Str1,14020333:Count,[(489,265)(621,265)(621,324)(587,324)])
}
END_SDK
Add(Hub,13775491,49,49)
{
link(onEvent1,16013350:doWork1,[])
link(onEvent2,736870:doWork1,[(81,62)(81,104)])
}
Add(Hub,15661481,49,98)
{
link(onEvent1,16013350:doWork2,[(81,104)(81,62)])
link(onEvent2,736870:doWork2,[])
}
Add(ChildPanel,736870,98,98)
{
}
BEGIN_SDK
Add(EditMulti,7712959,21,21)
{
WorkCount=2
Width=615
Height=403
link(doWork1,2014909:doFor,[(45,27)(45,223)])
link(doWork2,328505:doEvent1,[(45,34)(45,97)])
}
Add(Panel,15220286,154,42)
{
Left=399
Width=280
Height=311
Layout="parent.01"
WidthScale=50
}
Add(For,2014909,77,217)
{
End=30
link(onEvent,9837199:doString,[])
link(onStop,6883212:doEvent1,[(119,230)(119,335)])
}
Add(FormatStr,9837199,140,217)
{
DataCount=9
Mask="%1;%2;%3;%4;%5;%6;%7;%8;%9"
link(onFString,5507751:doAdd,[])
link(Str1,10229729:Var1,[(146,201)])
link(Str2,10229729:Var2,[])
link(Str3,5259159:Var2,[])
link(Str4,8533612:Var2,[])
link(Str5,3531516:Var2,[])
link(Str6,1381821:Var2,[])
link(Str7,2819909:Var2,[])
link(Str8,758209:Var2,[])
link(Str9,111699:Var2,[])
}
Add(EventFromData,15715321,203,154)
{
link(onEvent,14690365:doRandom,[])
}
Add(Random,14690365,259,154)
{
Min=1000
Max=10000
link(onRandom,15715321:doData,[(303,160)(303,148)(191,148)(191,160)])
}
Add(GetDataEx,5259159,154,196)
{
Angle=1
link(Data,8533612:Var1,[])
}
Add(GetDataEx,8533612,161,196)
{
Angle=1
link(Data,3531516:Var1,[])
}
Add(GetDataEx,3531516,168,196)
{
Angle=1
link(Data,1381821:Var1,[])
}
Add(GetDataEx,1381821,175,196)
{
Angle=1
link(Data,2819909:Var1,[])
}
Add(GetDataEx,2819909,182,196)
{
Angle=1
link(Data,758209:Var1,[])
}
Add(GetDataEx,758209,189,196)
{
Angle=1
link(Data,111699:Var1,[])
}
Add(GetDataEx,111699,196,196)
{
Angle=1
link(Data,15715321:GetData,[(209,201)])
}
Add(GetDataEx,10229729,147,196)
{
Angle=1
link(Data,5259159:Var1,[])
}
Add(Hub,328505,77,91)
{
link(onEvent1,11703699:doWork1,[(318,97)])
link(onEvent2,5507751:doClear,[(309,104)(309,230)])
}
Add(ChildPanel,8528219,77,336)
{
link(onEvent1,6883212:doEvent2,[])
}
BEGIN_SDK
Add(EditMulti,4482240,21,21)
{
EventCount=1
VarCount=1
link(Var1,10815115:Text,[(27,151)(216,151)])
}
Add(Panel,10623919,56,49)
{
Left=2
Top=2
Width=276
Height=28
Align=2
BevelInner=0
}
Add(Edit,10815115,210,49)
{
Left=20
Top=5
Width=85
Text=""
link(onChange,4482240:onEvent1,[(282,55)(282,27)])
}
Add(Button,11937243,147,49)
{
Left=110
Top=6
Caption="сброс"
link(onClick,10815115:doText,[])
}
Add(Label,668504,56,98)
{
Left=175
Top=10
Width=74
Height=17
Caption="StringTableMT"
}
END_SDK
Add(StringTableMT,681548,537,194)
{
Left=2
Top=30
Width=276
Height=278
Align=5
Font=[MS Sans Serif,8,0,0,204]
Name="Tab"
Layout="gor 01"
WidthScale=100
HeightScale=90
Columns=#5:№ п\п|1:1|1:2|1:3|1:4|1:5|1:6|1:7|1:8|1:9|
ColumnClick=1
TabGrid=0
TabGridFrame=0
SingleString=0
Grid=0
ModeMakeVisible=2
IconsCheck=[]
MiscIcons=[]
Icons=[]
Point(doSelect)
}
Add(StrList,5507751,364,217)
{
}
Add(Hub,6883212,161,329)
{
InCount=2
OutCount=3
link(onEvent1,11703699:doWork3,[(318,335)])
link(onEvent2,2411639:doString,[])
link(onEvent3,6402959:doEnum,[])
}
Add(FormatStr,2411639,231,336)
{
DataCount=1
Mask="*%1*"
link(onFString,10662775:doMask,[])
link(Str1,8528219:Var1,[(237,319)(141,319)(141,380)(83,380)])
}
Add(StrMask,10662775,350,329)
{
Point(doMask)
link(onTrue,11171175:doString,[])
}
Add(ArrayEnum,6402959,287,343)
{
link(onItem,10662775:doCompare,[(335,349)(335,335)])
link(Array,5507751:Array,[(293,296)(384,296)])
}
Add(FormatStr,11171175,399,336)
{
Mask="%1;%2"
link(onFString,681548:doAdd,[(484,342)(484,200)])
link(Str1,681548:Count,[(405,281)(543,281)])
}
Add(HubEx,11703699,314,201)
{
link(onEvent,681548:doClear,[])
}
END_SDK
Add(HBoxLayout,15014532,98,147)
{
Name="01"
}
END_SDK
карма: 3

0