Вверх ↑
Разработчик
Ответов: 26300
Рейтинг: 2146
#1: 2007-11-29 23:17:29 ЛС | профиль | цитата
unalex, помнишь, я сказал про MT-поток, вот схема, которая показывает, как из потока загружать данный в компонент при помощи MT, всего по одному каналу и без верхних точек


#sha
Add(MainForm,2260457,210,315)
{
Left=20
Top=105
Width=300
Color=8421376
Caption=":("
BorderStyle=3
link(onCreate,952493:doFor,[])
}
Add(GetDataEx,5981649,308,280)
{
Angle=3
link(Data,952493:Position,[(294,289)(294,394)(272,394)])
}
Add(PaintBox,9622693,448,301)
{
Left=10
Top=10
Width=309
Height=309
Align=5
Point(Width)
Point(Height)
}
Add(For,952493,266,350)
{
End=300
Step=5
onBreakEnable=0
link(onEvent,11196687:doAdd,[])
}
Add(Img_Line,15461523,448,350)
{
link(Bitmap,9622693:Bitmap,[])
}
Add(PointXY,13474959,357,301)
{
Y=308
link(X,5981649:Var3,[(363,289)])
}
Add(PointXY,7052863,315,301)
{
link(X,5981649:Var2,[])
}
Add(MT_Add,11196687,315,350)
{
InputMT=2
link(onAdd,13361430:doAdd,[])
link(Data,7052863:Point,[])
}
Add(MT_Add,13361430,357,350)
{
link(onAdd,1233116:doAdd,[])
link(Data,13474959:Point,[])
}
Add(MT_Add,1233116,399,350)
{
link(onAdd,15461523:doDraw,[])
link(Data,11466222:Value,[])
}
Add(Memory,11466222,399,301)
{
Default=Integer(255)
}

В компоненте Memory можешь поставить 0 и цвет будет черным. Можно вообще выкинуть эту спарку Memory+MT_Add, если нужен только черный цвет

Я привел эту схему в только в качестве познавательной по MT-потокам.

В завершение приведу еще одну интересную схему


#sha
Add(MainForm,2260457,231,315)
{
Left=20
Top=105
Width=300
Color=8421376
Caption=":("
BorderStyle=3
link(onCreate,952493:doFor,[])
}
Add(GetDataEx,5981649,378,280)
{
Angle=3
link(Data,952493:Position,[(340,289)(340,394)(293,394)])
}
Add(PaintBox,9622693,343,301)
{
Width=294
Height=268
Align=5
Point(Width)
Point(Height)
}
Add(For,952493,287,350)
{
End=300
Step=5
onBreakEnable=0
link(onEvent,13802182:doAdd,[])
}
Add(Img_Line,15461523,518,350)
{
}
Add(PointXY,13474959,427,301)
{
Y=308
link(X,5981649:Var3,[(433,289)])
}
Add(PointXY,7052863,385,301)
{
link(X,5981649:Var2,[])
}
Add(MT_Add,11196687,385,350)
{
link(onAdd,13361430:doAdd,[])
link(Data,7052863:Point,[])
}
Add(MT_Add,13361430,427,350)
{
link(onAdd,1233116:doAdd,[])
link(Data,13474959:Point,[])
}
Add(MT_Add,1233116,469,350)
{
link(onAdd,15461523:doDraw,[])
link(Data,11466222:Value,[])
}
Add(Memory,11466222,469,301)
{
Default=Integer(255)
}
Add(MT_Add,13802182,343,350)
{
InputMT=2
link(onAdd,11196687:doAdd,[])
link(Data,9622693:Bitmap,[])
}


В этой схеме получается вообще виртуальная (безлинковая) связь компонента Line с PaintBox'ом.
карма: 22

0