Вверх ↑
Ответов: 263
Рейтинг: 18
#1: 2019-06-30 19:07:51 ЛС | профиль | цитата
Ох коллеги, устал я от не предсказуемости поведения компонентов.
В этой теме http://forum.hiasm.com/topic/65252/2 я поделился самодельной шапкой к MTStrTbl. Спасибо sla8a, который допилил схему до ума. Сейчас я делаю редактор шапки в котором, на даном этапе, реализую настройку выравнивания текста заголовка столбца. Вот схема.
Схема

Add(MainForm,2953706,210,168)
{
Width=555
Height=150
Position=1
link(onCreate,11034465:doEnum,[])
}
Add(ChildPanel,10794649,364,182)
{
@Hint=#26:Самодельныая шапка таблицы|
}
BEGIN_SDK
Add(EditMulti,12543744,21,21)
{
EventCount=1
WorkCount=1
Width=209
Height=102
link(doWork1,12924194:##add,[(53,27)(53,48)])
}
Add(Panel,12693430,133,42)
{
Width=550
Height=100
Align=2
Color=16777215
ModeSp=3
SizeSp=2
BevelInner=0
}
Add(ChildPanelEx,12924194,84,42)
{
Mode=1
}
BEGIN_SDK
Add(EditMultiEx,6203688,21,21)
{
WorkCount=#5:##add|
DataCount=#0:|0:|
Width=461
Height=263
Point(##add)
link(##add,1422035:doValue,[(35,27)(35,41)])
}
Add(Panel,12581313,392,84)
{
Width=84
Height=24
Align=1
Color=16777215
ModeSp=1
SizeSp=2
ColorSp=15790320
BevelInner=0
Point(doColor)
}
Add(MultiElementEx,2303422,308,91)
{
@Hint=#15:Изменение цвета|
link(onColor1,12581313:doColor,[])
link(onColor2,5030271:doEvent1,[(361,104)(361,73)(120,73)(120,104)])
}
BEGIN_SDK
Add(EditMultiEx,10027322,21,21)
{
WorkCount=#8:doEvent1|9:doEvent11|
EventCount=#8:onColor1|8:onColor2|
Width=510
Height=214
link(doEvent1,8553288:doEvent1,[(39,27)(39,125)])
link(doEvent11,9701472:doEvent1,[(30,34)(30,48)])
}
Add(Memory,11849292,315,42)
{
Default=Integer(100)
link(onData,13506573:doEvent1,[])
}
Add(MMTimer,6112562,126,42)
{
Interval=5
Enable=1
link(onTimer,1443830:doOperation,[])
}
Add(Hub,9701472,56,42)
{
link(onEvent1,6112562:doTimer,[])
link(onEvent2,6590036:doWork1,[(81,55)])
}
Add(Hub,8553288,56,119)
{
link(onEvent1,12999749:doTimer,[])
link(onEvent2,14164394:doWork2,[(94,132)(94,55)])
}
Add(Math,1443830,189,42)
{
Op2=5
link(onResult,3786256:doCompare,[])
link(Op1,9271514:Var3,[(195,30)(181,30)])
}
Add(If_else,3786256,238,42)
{
Type=3
Op2=Integer(100)
link(onTrue,12991967:doWork2,[])
link(onFalse,14164394:doWork3,[(282,55)(282,86)(109,86)])
}
Add(Math,2973136,175,119)
{
OpType=1
Op2=5
link(onResult,12173902:doCompare,[])
link(Op1,9271514:Var2,[])
}
Add(If_else,12173902,238,119)
{
Type=4
Op2=Integer(0)
link(onTrue,12991967:doWork3,[(298,125)])
link(onFalse,6590036:doWork2,[(295,132)(295,164)(72,164)(72,139)])
}
Add(GetDataEx,9271514,175,91)
{
Angle=1
link(Data,11849292:Value,[(321,96)])
}
Add(ColorShade,8825518,399,42)
{
Color=15780518
Mode=0
link(onResult,10027322:onColor1,[(481,48)(481,27)])
}
Add(ColorShade,3690173,399,84)
{
Color=16771802
Mode=0
link(onResult,10027322:onColor2,[(499,90)(499,34)])
}
Add(Hub,13506573,364,42)
{
link(onEvent1,8825518:doShade,[])
link(onEvent2,3690173:doShade,[(388,55)(388,90)])
}
Add(MMTimer,12999749,126,119)
{
Interval=5
Enable=1
link(onTimer,2973136:doOperation,[])
}
Add(HubEx,12991967,294,42)
{
link(onEvent,11849292:doValue,[])
}
Add(HubEx,14164394,105,49)
{
link(onEvent,6112562:doStop,[])
}
Add(HubEx,6590036,77,133)
{
link(onEvent,12999749:doStop,[(105,139)(105,132)])
}
END_SDK
Add(Hub,5030271,133,98)
{
InCount=2
link(onEvent1,7841714:doColor,[])
link(onEvent2,4181371:doWork2,[(160,111)(160,90)])
}
Add(PaintBox,7841714,245,84)
{
Width=1920
Height=1080
Align=5
Color=16777215
ClearBeforeDraw=0
Point(Width)
Point(Height)
Point(doColor)
Point(onMouseEnter)
Point(onMouseLeave)
Point(onResize)
link(onBeforeDraw,8847184:doDraw,[(295,90)(295,234)(223,234)(223,195)])
link(onMouseEnter,2303422:doEvent1,[])
link(onMouseLeave,2303422:doEvent11,[])
link(onResize,4181371:doWork1,[(289,111)(289,81)(171,81)])
}
Add(Img_TextInRect,8847184,231,189)
{
Point1=65537
Point2AsOffset=0
OffsetRight=5
AlignHorizon=2
Alignvertical=2
Point(doAlignHorizon)
link(Bitmap,7841714:Bitmap,[(237,155)(251,155)])
link(Text,1422035:Value,[(244,125)(55,125)])
link(Point2,10999290:Point,[])
}
Add(PointXY,10999290,252,140)
{
link(X,7841714:Width,[])
link(Y,7841714:Height,[])
}
Add(Memory,1422035,49,35)
{
}
Add(ChildPanel,9231110,49,196)
{
link(onEvent1,4226806:doEvent1,[])
}
BEGIN_SDK
Add(EditMulti,15979597,21,21)
{
EventCount=2
DataCount=1
Width=447
Height=305
}
Add(Panel,12093390,56,35)
{
Left=35
Top=105
Width=74
Align=4
}
Add(ButtonRush,9991236,189,28)
{
Width=24
Height=24
Name="AL"
ColorFrom=-16777201
ColorTo=-16777201
BorderColor=-16777201
GradientStyle=3
ColorFromOver=16771802
ColorToOver=16771802
BorderColorOver=-16777214
ShadowOffsetOver=0
GradientStyleOver=3
ColorFromDown=16771802
ColorToDown=16771802
BorderColorDown=-16777214
ShadowOffsetDown=1
GradientStyleDown=3
ColorToDis=12632256
ColorTextDis=-16777199
ShadowOffsetDis=0
GradientStyleDis=3
Caption=""
Data=Integer(0)
Spacing=1
OnlyGlyphDef=0
Glyphs=['Bitmap'=[ZIP3604000078DAA553594E024114C4C40378043F3D819FCAE212134554B6011714578208B2C6BB708601CEC111882BDB086E83EC3394AF1BC710F003B1929AEE7477BDEAEAE9366ECC4FEB38E68973C4996F4EE966FB13DFF383C8E572C866B313916993C92432990C52A91444713CB2B54CA3692785E63B2E545585A228BC6560DA743ACDFB46FD026C3B5BF07AF611BCF4231C0AE0F4F8100E9B15CB26235FA374BBE8763A9C0CA228FEE827C1A0BFC9A0C7B66503BB8203C7471EF87DE788864348C42208F87D34760097D30E8B791D26FD22D730EDF8FE3DF454CAAEB00CAD117F965170D828F31122A120E2D16BF8CE4EE0169C585B5D41BBDDC2E7670D724D862C7F8CE859DD61BF3EE9DB53D1217DABD940B351479DEA0CEB978C0658B737B1E71670E23DE499E3D1306E123104037EBEAF5D9793CEC88C253AABE1FCACAE427BE8FFA336F911A965FD76ABC93D6BB46FF9E31D6FAF2FBFFA0B766B3F7FF00AB1C8352E06F257AB15944A45148B05140AF9117D99E62ACF129EA532A7249578CBC6A47211F9A7473CDCDFE1E1EE16F7444DFFDFFBCFEEA0F60EFE42CDF70B19625CFD]]
Point(doEnabled)
link(onClick,5310417:doWork2,[])
}
Add(ButtonRush,2010469,203,63)
{
Left=24
Width=24
Height=24
Name="AC"
ColorFrom=-16777201
ColorTo=-16777201
BorderColor=-16777201
GradientStyle=3
ColorFromOver=16771802
ColorToOver=16771802
BorderColorOver=-16777214
ShadowOffsetOver=0
GradientStyleOver=3
ColorFromDown=16771802
ColorToDown=16771802
BorderColorDown=-16777214
ShadowOffsetDown=1
GradientStyleDown=3
ColorToDis=12632256
ColorTextDis=-16777199
ShadowOffsetDis=0
GradientStyleDis=3
Caption=""
Data=Integer(2)
Spacing=1
OnlyGlyphDef=0
Glyphs=['Bitmap'=[ZIP3604000078DAA553594E025110C4C40378043F3D015F2AA818C520C16882EC12DC4258448218EFC21958CEC11188A0B2EAA0917D6618CAD74F9E0B7EA05849259DE9AAA9AE64667D573FAFE3D0332E312E8C39A75B7C5F8CF75F51281490CFE767227953A91472B91C32990CD2E9DF91B4E411DE592172099AA6714EC357DDFBCD693EAB8A82A1AAF279C36880F3D08E70F01C97D1307C6E27B6374D7C471AD212C82BF2670179B3D92C9F8D2BCBB05A76E0B01FE0D8EFE3D989780CD7577144C3419C1EFBE176D8B167B5F0FB08E415F9AA2263A40DA766924655061FF9C2DF6ABDA2D3694366EFD9625DBD2E272E22215CB11B02475E58CC66C8F2806B483BE9EFB2E7837E8FDFC15244DAE73CD2F88E34A49DECBF6658858D7573B18E27013F22A1209289386E9209C4D81D672701785C0EECDBAC30AD197FF47F796EA2CDEEEA753B50D89D94A5C8F2C72C0FFAE8B21D69483B797FA55246AD5685D494787FCFB87F42F4DF3143929EB886B493FE52F11677A522CA0FF768D4AB786CD4BFB1CE7CB4230D6985FFBFDF3F7D83E23FF80B45EE1B71ED66B1]]
Point(doEnabled)
link(onClick,611785:doWork2,[])
}
Add(ButtonRush,1645491,217,98)
{
Left=48
Width=24
Height=24
Name="AR"
ColorFrom=-16777201
ColorTo=-16777201
BorderColor=-16777201
GradientStyle=3
ColorFromOver=16771802
ColorToOver=16771802
BorderColorOver=-16777214
ShadowOffsetOver=0
GradientStyleOver=3
ColorFromDown=16771802
ColorToDown=16771802
BorderColorDown=-16777214
ShadowOffsetDown=1
GradientStyleDown=3
ColorToDis=12632256
ColorTextDis=-16777199
ShadowOffsetDis=0
GradientStyleDis=3
Caption=""
Data=Integer(1)
Spacing=1
OnlyGlyphDef=0
Glyphs=['Bitmap'=[ZIP3604000078DAA553594E024114C4C40378043F3D815FAE231013C518659911C9288CA288208B180FC31958CEC111882B3BAE8C0AB35976378C41D404B1924AF74B77CDABEAE9E61CD3E3168669C229C2891EC72C93DD85DE7A3F8AC5220A85C248A4DA743A8D7C3E8F6C368B4C6638D2BD54636A4785D997C2300CE8BACEC661D1F59C61734D5519754D6335373F07D7E63AFC3B224E2261246211EC4B7EF02E27EC4B1CDB93CBE53EFB8F02AAA7A458989DC1DAEA0A78B70B7ED187702888542286B3D338A24721EC05FCF07905E6C9CA2D7EEBAFA90A0C5DC3BBA193EA7DE8FEA6BED57A862CB7F0F22243513A2CA3E07192CC0124E351E62374B00FAFC063D96EFBA67F25BAF6DB2B3AED37A88A422CF4FF87AF7EA8CFC1FC8BE4BCD7D71CD8E23D90764544C287A46702E7A92462C761042509E2B6176EE7066C3F9CFFE3C33D5ACF4F90490EEA45E9B4D99950523F74D4359591FA1CD497CB25542A65546B55DCDD3561B72E417093FC01923F16452A49F207F77ECD7F7579816BCAAB4B946E6F5027DF6936EA68D46B8CB436E7B56AE553FFDFFB4FEFAFF90EFE42B3EF076C165CF3]]
Point(doEnabled)
link(onClick,611785:doWork3,[(270,104)])
}
Add(ButtonRush,1253019,245,168)
{
Left=48
Top=24
Width=24
Height=24
ColorFrom=-16777201
ColorTo=-16777201
BorderColor=-16777201
GradientStyle=3
ColorFromOver=16771802
ColorToOver=16771802
BorderColorOver=-16777214
ShadowOffsetOver=0
GradientStyleOver=3
ColorFromDown=16771802
ColorToDown=16771802
BorderColorDown=-16777214
ShadowOffsetDown=1
GradientStyleDown=3
ColorToDis=12632256
ColorTextDis=-16777199
ShadowOffsetDis=0
GradientStyleDis=3
Caption=""
Spacing=1
OnlyGlyphDef=0
Glyphs=['Bitmap'=[ZIP3604000078DA9D535D6E824010B6490FD023F4B127F000BEF782F5B1504D941F3D46E50C846ACB2E2D148C54D8843ADD19043775D1842FF9921966E69BD99D65F438BC1D1086920F927747DE0CEEEBC031AE02AEC0F77DF03C0FFA623C7E82E5D2EDADB1583810C709388EA5D5088280BE77D1B6E794C71893F6EC4C03E7735D8BF230AED2B266309DBEB4B96118529EAA81B5D75055BF92955603FB2044514259145A16FB3D11ED0369B056A3A9572184807CB7D3F227CFE120E7E19CCBD96DBA5784693EC36462C06AF54A7E9A7E4396A55A6EB719E5602D6A445144FE66FD26354CB2E3F88B9824F1198528DBFEB5CE9CFC660E0497FB5219C9F8A7EC83F7C018A71A15E83773E8F0F1BEA1F3639FFFB5A75DD6F7D1EC5EDD3F9EF9526D174EEF8FB776DFF7DF078661D0FFD7853FF9A9BA63]]
Point(doEnabled)
}
Add(ButtonRush,10618394,231,133)
{
Top=24
Width=24
Height=24
ColorFrom=-16777201
ColorTo=-16777201
BorderColor=-16777201
GradientStyle=3
ColorFromOver=16771802
ColorToOver=16771802
BorderColorOver=-16777214
ShadowOffsetOver=0
GradientStyleOver=3
ColorFromDown=16771802
ColorToDown=16771802
BorderColorDown=-16777214
ShadowOffsetDown=1
GradientStyleDown=3
ColorToDis=12632256
ColorTextDis=-16777199
ShadowOffsetDis=0
GradientStyleDis=3
Caption=""
Spacing=1
OnlyGlyphDef=0
Glyphs=['Bitmap'=[ZIP3604000078DA9D536D4E834010AD8907F008FEF4043D80FFBDA08DFD23FD48CAC7B6C7B09C8190A87C14109A626113ECB86FDB6DD1828DBCE42533B3FB669899E5FEA17FDD93E80BDE09DE1C78D5BBDD1F1CCEEBA016D8B64D8EE3501740BB58301A0E9F3A692DCBA0384E683E37FFAD35CD19F9BE2F7DD888B5D175DD5F5A9D3CCF3BC6A6D33119C64CE6F9499D18336830786CD4565525F875F17B91E3A4F5692762655150B1DD4AC26E222FCA637F8C99140401ED44BDCF3CA77CB36924E7FCAC3EF49835B05E6794656923D3F443DE592E5F683CD168347A963EB4AA3EE72525497CC6388E248189D046D14ADA61184AED3E8F2E7616C89E57221E8A7C81D8619D80AA8B7AD0D4011F71F4FAFEF6DA3A73D4C5BC9BA0726016F5FDAB37A0FAFD0BC88D5E94DD05A7F76F5157E0FFD334EDE2BD6FE2C7BA80]]
Point(doEnabled)
}
Add(HubEx,5310417,266,28)
{
Angle=3
link(onEvent,15979597:onEvent1,[(270,27)])
}
Add(HubEx,611785,266,63)
{
Angle=3
link(onEvent,5310417:doWork3,[])
}
Add(RadioButton,385096,189,238)
{
Left=29
Top=29
Width=16
Height=16
Caption=""
}
Add(RadioButton,2320826,119,273)
{
Left=230
Top=285
Visible=1
Selected=0
}
END_SDK
Add(Hub,4226806,147,196)
{
link(onEvent1,8847184:doAlignHorizon,[])
link(onEvent2,4181371:doWork3,[(171,209)])
}
Add(HubEx,4181371,167,84)
{
link(onEvent,7841714:doRefresh,[])
}
END_SDK
END_SDK
Add(StrList,12323572,273,105)
{
Strings=#9:Должность|20:Фамилия Имя Отчество|18:Внутренний телефон|17:Городской телефон|15:Сотовый телефон|17:Электронная почта|
}
Add(ArrayEnum,11034465,287,182)
{
link(onItem,10794649:doWork1,[])
link(Array,12323572:Array,[])
}
В чем суть проблемы. Если к столбцу с названием "Сотовый телефон" применить выравнивании текста по правому краю, то его название компонент Img_TextInRect отрисовывает в одну строку. Вот с чего вдруг он решает, что строка вмещается в одну строку?! Даже при изменении размера столбца он до усрачки отрисовывает этот проклятый сотовый телефон или в одну строку или аж на три строки...
Видео
Как можно это исправить, подскажите люди добрые?
карма: 3

0
Редактировалось 1 раз(а), последний 2019-06-30 19:20:00