Вверх ↑
Этот топик читают: Гость
Ответов: 16884
Рейтинг: 1239
#16: 2019-01-19 13:39:10 ЛС | профиль | цитата
IndexToCanalAll.ini писал(а):
[About]
Version=1.0
Author=Dilma & Леонид
nesco, а почему компонент с авторством Dilma занесён в "нештатки" ?
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26066
Рейтинг: 2120
#17: 2019-01-19 14:07:51 ЛС | профиль | цитата
Tad писал(а):
а почему компонент с авторством Dilma занесён в "нештатки" ?

Видимо потому, что за основу взят штатный, но идея доработки принадлежит Леониду. Хорошая это идея или нет, я судить не буду, но, видимо, она была для чего-то нужна Леониду

Редактировалось 3 раз(а), последний 2019-01-19 14:10:52
карма: 22

0
Ответов: 85
Рейтинг: 0
#18: 2019-01-21 07:00:17 ЛС | профиль | цитата
Ого тут целый симпозиум Продолжил немного тут изыскания.. Что мне не нравиться в этом проекте. Конечно это пункт меню "Дальше". Просто я посмотрел несколько сторонних программ там , где есть выбор сом-порта.. Ну нет там "Дальше"...... Просто после выбора свойств сом-порта. нажимается кнопка ОК и окно скрывается
Попытался тут нарисовать...


Add(MainForm,9953887,560,175)
{
Width=1031
Height=607
Position=1
Point(onClose)
Point(Close)
link(onCreate,988124:doWork1,[(607,195)(607,170)(443,170)(443,209)])
link(onClose,988124:doWork3,[(601,202)(601,241)(448,241)(448,223)])
}
Add(Menu,126380,287,182)
{
Menu=#9:Программа|1:(|4:Exit|1:)|8:СОМ-ПОРТ|1:(|5:Выбор|1:)|0:|
Point(onSelectNum)
link(onSelectNum,13748720:doOperation,[])
}
Add(Math,13748720,336,189)
{
OpType=9
Op1=1
ResultType=0
link(onResult,4018740:doBits,[])
}
Add(IntToBits,4018740,385,189)
{
Data_0=Integer(0)
Data_1=Integer(1)
link(onBit2,16185788:doCompare,[])
link(onBit4,988124:doWork2,[])
}
Add(ChildGroupBox,988124,455,203)
{
}
BEGIN_SDK
Add(EditMulti,2638144,21,-7)
{
EventCount=2
WorkCount=3
Width=412
Height=361
VOffset=7
link(doWork1,3043274:doEnumPorts,[])
link(doWork2,1712925:doWork2,[])
link(doWork3,3048907:doWork1,[(74,20)])
}
Add(GroupBox,2260444,84,7)
{
Width=604
Height=351
Align=5
Font=[MS Sans Serif,8,1,0,1]
Visible=1
Caption="Выбор и включение COM-порта."
Point(doVisible)
}
Add(If_else,3683441,343,70)
{
Type=5
Op2=String()
link(onTrue,2638144:onEvent1,[(424,76)(424,6)])
}
Add(ComboBox,16154141,301,7)
{
Left=135
Top=20
Width=75
Height=21
Color=15780518
Font=[MS Sans Serif,8,1,0,1]
WinStyle=4
Strings=#3:300|3:600|4:1200|4:2400|4:4800|4:9600|5:14400|5:19200|5:38400|5:57600|6:115200|
Text="19200"
DataType=1
ReadOnly=0
Point(doSelect)
Point(EditText)
Point(onSelect)
link(onClick,15624758:doStrCat,[])
}
Add(ComboBox,2979466,175,0)
{
Left=35
Top=20
Width=80
Height=21
Color=15780518
Font=[MS Sans Serif,8,1,0,1]
WinStyle=4
Text=""
DataType=1
ReadOnly=0
Point(doSelect)
Point(onSelect)
Point(EditText)
link(onClick,10022346:doStrCat,[])
}
Add(COM,8931599,301,63)
{
BaudRate=15
link(onRead,3683441:doCompare,[])
link(Port,2979466:String,[(307,52)])
link(BaudRate,16154141:String,[])
}
Add(Timer,15323035,168,91)
{
Interval=32
link(onTimer,1856028:doData,[])
}
Add(DoData,1856028,245,91)
{
Data=Integer(30)
link(onEventData,8931599:doRead,[])
}
Add(Label,1595256,259,7)
{
Left=35
Top=54
Width=84
Height=19
Caption=""
}
Add(Label,15670888,385,14)
{
Left=135
Top=55
Width=79
Height=19
Caption=""
}
Add(StrCat,10022346,217,7)
{
Str1="сом-порт № "
link(onStrCat,1595256:doText,[])
}
Add(StrCat,15624758,343,14)
{
Str1="Скорость "
link(onStrCat,15670888:doText,[])
}
Add(EnumCOM,3043274,133,0)
{
OutType=0
link(onEnumPorts,2979466:doAdd,[])
}
Add(HubEx,3048907,70,70)
{
link(onEvent,8931599:doClose,[])
}
Add(Switch,7986566,147,168)
{
DataOn=String(255,ОТМЕНА)
DataOff=String(0,ОК)
Point(State)
Point(onOff)
Point(onOn)
link(onSwitch,6983891:doEvent1,[(191,174)(191,244)])
link(onOff,3048907:doWork2,[(191,181)(191,132)(65,132)(65,76)])
link(onOn,8931599:doOpen,[(240,188)(240,69)])
}
Add(BitBtn,12852987,98,168)
{
Left=235
Top=21
Width=125
Color=0
Font=[MS Sans Serif,8,1,16777215,1]
Caption="ОК"
Point(doColor)
link(onClick,7986566:doSwitch,[])
}
Add(StrPart,11914673,56,168)
{
Char=","
Point(Left)
link(onSplit,12852987:doCaption,[])
link(onPart,12852987:doColor,[])
}
Add(Label,172423,56,231)
{
Left=260
Top=55
Width=100
link(Text,11914673:Left,[])
}
Add(Hub,6983891,203,238)
{
OutCount=3
link(onEvent1,11914673:doSplit,[(229,244)(229,209)(44,209)(44,174)])
link(onEvent2,172423:doText,[(229,251)(229,244)(44,244)(44,237)])
link(onEvent3,10136193:doCompare,[(229,258)(229,286)(51,286)(51,314)])
}
Add(If_else,10136193,63,308)
{
Op1=Integer(255)
link(onTrue,4463853:doWork1,[])
link(onFalse,4463853:doWork2,[])
link(Op2,172423:Caption,[(76,286)(62,286)])
}
Add(ChanelToIndex,4463853,119,308)
{
link(onIndex,12005235:doEvent1,[(184,314)(184,335)])
}
Add(HubEx,1712925,49,7)
{
link(onEvent,2260444:doVisible,[])
}
Add(Hub,12005235,217,329)
{
link(onEvent1,1712925:doWork3,[(243,335)(243,175)(53,175)])
link(onEvent2,2638144:onEvent2,[(332,342)(332,13)])
}
END_SDK
Add(If_else,16185788,518,196)
{
Op2=Integer(1)
link(onTrue,9953887:doClose,[])
}

карма: 0

0
Ответов: 1925
Рейтинг: 172
#19: 2019-01-24 19:54:07 ЛС | профиль | цитата
Используйте

Add(MenuEx,10609019,378,224)
{
Bitmaps=[]
}
, там и галки, и видимость/доступность пунктов можно регулировать.
карма: 9
0
Ответов: 490
Рейтинг: 162
#20: 2019-01-25 23:57:03 ЛС | профиль | цитата
RT9U, ёще один МОД
Вариант


Add(MainForm,9053971,350,105)
{
Width=384
Height=202
Caption="Пример"
Position=1
Point(onClose)
link(onCreate,12309937:doWork2,[])
link(onClose,12309937:doWork3,[])
}
Add(ChildPanel,12309937,483,112)
{
}
BEGIN_SDK
Add(EditMulti,10103785,21,21)
{
EventCount=1
WorkCount=3
Width=447
Height=389
VOffset=35
HOffset=35
link(doWork1,8848704:doWork2,[(43,62)(43,356)])
link(doWork2,5763239:doEvent1,[])
link(doWork3,4568531:In,[(55,76)(55,104)])
}
Add(Panel,11819185,364,336)
{
Left=80
Width=88
Height=80
Visible=1
Point(doVisible)
Point(doBringToFront)
Point(Handle)
}
Add(EnumCOM,1484817,112,56)
{
link(onEnumPorts,15481808:doModify,[])
}
Add(StrCase,15481808,168,56)
{
Type=1
link(onModify,2979466:doAdd,[])
}
Add(Delete,12910138,259,63)
{
Count=3
link(onDelete,14208881:doValue,[])
}
Add(Memory,14208881,308,63)
{
Default=Integer(1)
}
Add(ComboBox,16154141,217,126)
{
Left=5
Top=30
Width=80
Height=21
Color=15780518
Font=[MS Sans Serif,8,1,0,1]
WinStyle=4
Strings=#3:300|3:600|4:1200|4:2400|4:4800|4:9600|5:14400|5:19200|5:38400|5:57600|6:115200|
Text="19200"
DataType=1
ReadOnly=0
Point(doSelect)
Point(EditText)
Point(onSelect)
Point(doEnabled)
}
Add(ComboBox,2979466,217,56)
{
Left=5
Top=5
Width=80
Height=21
Color=15780518
Font=[MS Sans Serif,8,1,0,1]
WinStyle=4
Text=""
DataType=1
ReadOnly=0
Point(doSelect)
Point(onSelect)
Point(EditText)
Point(doEnabled)
link(onClick,12910138:doDelete,[])
}
Add(Switch,7986566,217,224)
{
DataOn=String(Close;255;0)
DataOff=String(Open;0;1)
Point(State)
Point(onOff)
Point(onOn)
link(onSwitch,11261772:doSplit,[(261,230)(261,218)(58,218)(58,230)])
link(onOff,15166735:doWork1,[(291,237)])
link(onOn,8931599:doOpen,[])
}
Add(BitBtn,12852987,140,224)
{
Left=5
Top=56
Color=0
Font=[MS Sans Serif,8,1,16777215,1]
Caption="Open"
Point(doColor)
link(onClick,6817628:doEvent1,[])
}
Add(Hub,5763239,70,63)
{
link(onEvent1,1484817:doEnumPorts,[(98,69)(98,62)])
link(onEvent2,14823795:doData,[(102,76)(102,160)])
}
Add(DoData,14823795,140,154)
{
Data=Integer(9)
link(onEventData,16154141:doSelect,[])
}
Add(If_else,3683441,364,245)
{
Type=5
Op2=String()
link(onTrue,10103785:onEvent1,[(422,251)(422,62)])
}
Add(COM,8931599,308,238)
{
BaudRate=15
link(onRead,3683441:doCompare,[])
link(Port,14208881:Value,[])
link(BaudRate,16154141:String,[(321,196)(230,196)])
}
Add(Timer,15323035,140,266)
{
Interval=32
link(onTimer,1856028:doData,[])
}
Add(DoData,1856028,217,266)
{
Data=Integer(30)
link(onEventData,8931599:doRead,[])
}
Add(MultiStrData,11261772,77,224)
{
Count=3
link(onPart1,12852987:doCaption,[])
link(onPart2,12852987:doColor,[])
link(onPart3,5361239:doConvert,[(120,244)(120,111)])
}
Add(ChanelToIndex,8848704,294,343)
{
link(onIndex,11819185:doVisible,[])
}
Add(LineBreak,6626909,252,252)
{
link(Out,15166735:doWork3,[(291,258)])
Primary=[4568531,-189,-154]
}
Add(HubEx,15166735,287,245)
{
link(onEvent,8931599:doClose,[])
}
Add(Hub,14269358,182,105)
{
link(onEvent1,2979466:doEnabled,[(206,111)(206,97)])
link(onEvent2,16154141:doEnabled,[(204,118)(204,167)])
}
Add(Convertor,5361239,140,105)
{
Mode=1
link(onResult,14269358:doEvent1,[])
}
Add(BitBtn,2393174,226,362)
{
Left=60
Top=56
Width=25
Color=0
Font=[MS Sans Serif,8,1,16777215,1]
Caption="X"
Point(doColor)
link(onClick,9923200:doWork3,[(271,368)])
}
Add(Thread,5871776,224,315)
{
Delay=555
FastStop=0
link(onExec,9923200:doWork1,[(271,321)])
}
Add(Hub,6817628,182,224)
{
link(onEvent1,7986566:doSwitch,[])
link(onEvent2,5871776:doStart,[(206,237)(206,321)])
}
Add(HubEx,9923200,267,343)
{
link(onEvent,8848704:doWork1,[])
}
END_SDK
Add(IndexToChanel,2345105,434,91)
{
Count=4
link(onEvent2,9053971:doClose,[(478,104)(478,76)(335,76)(335,132)])
link(onEvent4,12309937:doWork1,[])
}
Add(Menu,126380,392,84)
{
Menu=#9:Программа|1:(|4:Exit|1:)|8:СОМ-ПОРТ|1:(|5:Выбор|1:)|
Point(onSelectNum)
link(onSelectNum,2345105:doEvent,[])
}

карма: 4

0
Разработчик
Ответов: 26066
Рейтинг: 2120
#21: 2019-01-26 00:50:37 ЛС | профиль | цитата
tig-rrr писал(а):
ёще один МОД

А параллельный поток там зачем нужен, да еще и с интересной такой задержкой -- 555 мсек? Это что, ты открыл какой-то сакральный режим, о котором никто никогда не знал?
карма: 22

0
Ответов: 490
Рейтинг: 162
#22: 2019-01-26 06:42:58 ЛС | профиль | цитата
nesco писал(а):
А параллельный поток там зачем нужен
Это ИМХО для визуальной "задержки" чтоб увидеть как состояние кнопки переключились (можно и не ставить), конечно в данном случае правильней таймер использовать,

Add(MainForm,9053971,287,140)
{
Width=384
Height=202
Caption="Пример"
Position=1
Point(onClose)
link(onCreate,12309937:doWork2,[])
link(onClose,12309937:doWork3,[])
}
Add(ChildPanel,12309937,420,147)
{
}
BEGIN_SDK
Add(EditMulti,10103785,21,21)
{
EventCount=1
WorkCount=3
Width=447
Height=410
VOffset=35
HOffset=35
link(doWork1,8848704:doWork2,[(43,62)(43,356)])
link(doWork2,5763239:doEvent1,[])
link(doWork3,4568531:In,[(55,76)(55,104)])
}
Add(Panel,11819185,364,336)
{
Left=80
Width=88
Height=80
Visible=1
Point(doVisible)
Point(doBringToFront)
Point(Handle)
}
Add(EnumCOM,1484817,112,56)
{
link(onEnumPorts,15481808:doModify,[])
}
Add(StrCase,15481808,168,56)
{
Type=1
link(onModify,2979466:doAdd,[])
}
Add(Delete,12910138,259,63)
{
Count=3
link(onDelete,14208881:doValue,[])
}
Add(Memory,14208881,308,63)
{
Default=Integer(1)
}
Add(ComboBox,16154141,217,126)
{
Left=5
Top=30
Width=80
Height=21
Color=15780518
Font=[MS Sans Serif,8,1,0,1]
WinStyle=4
Strings=#3:300|3:600|4:1200|4:2400|4:4800|4:9600|5:14400|5:19200|5:38400|5:57600|6:115200|
Text="19200"
DataType=1
ReadOnly=0
Point(doSelect)
Point(EditText)
Point(onSelect)
Point(doEnabled)
}
Add(ComboBox,2979466,217,56)
{
Left=5
Top=5
Width=80
Height=21
Color=15780518
Font=[MS Sans Serif,8,1,0,1]
WinStyle=4
Text=""
DataType=1
ReadOnly=0
Point(doSelect)
Point(onSelect)
Point(EditText)
Point(doEnabled)
link(onClick,12910138:doDelete,[])
}
Add(Switch,7986566,217,224)
{
DataOn=String(Close;255;0)
DataOff=String(Open;0;1)
Point(State)
Point(onOff)
Point(onOn)
link(onSwitch,11261772:doSplit,[(261,230)(261,218)(58,218)(58,230)])
link(onOff,15166735:doWork1,[(291,237)])
link(onOn,8931599:doOpen,[])
}
Add(BitBtn,12852987,140,224)
{
Left=5
Top=56
Color=0
Font=[MS Sans Serif,8,1,16777215,1]
Caption="Open"
Point(doColor)
link(onClick,6817628:doEvent1,[])
}
Add(Hub,5763239,70,63)
{
link(onEvent1,1484817:doEnumPorts,[(98,69)(98,62)])
link(onEvent2,14823795:doData,[(102,76)(102,160)])
}
Add(DoData,14823795,140,154)
{
Data=Integer(9)
link(onEventData,16154141:doSelect,[])
}
Add(If_else,3683441,364,245)
{
Type=5
Op2=String()
link(onTrue,10103785:onEvent1,[(422,251)(422,62)])
}
Add(COM,8931599,308,238)
{
BaudRate=15
link(onRead,3683441:doCompare,[])
link(Port,14208881:Value,[])
link(BaudRate,16154141:String,[(321,196)(230,196)])
}
Add(Timer,15323035,140,266)
{
Interval=32
link(onTimer,1856028:doData,[])
}
Add(DoData,1856028,217,266)
{
Data=Integer(30)
link(onEventData,8931599:doRead,[])
}
Add(MultiStrData,11261772,77,224)
{
Count=3
link(onPart1,12852987:doCaption,[])
link(onPart2,12852987:doColor,[])
link(onPart3,5361239:doConvert,[(120,244)(120,111)])
}
Add(ChanelToIndex,8848704,294,343)
{
link(onIndex,11819185:doVisible,[])
}
Add(LineBreak,4968948,252,252)
{
link(Out,15166735:doWork3,[(291,258)])
Primary=[4568531,-189,-154]
}
Add(HubEx,15166735,287,245)
{
link(onEvent,8931599:doClose,[])
}
Add(Hub,14269358,182,105)
{
link(onEvent1,2979466:doEnabled,[(206,111)(206,97)])
link(onEvent2,16154141:doEnabled,[(204,118)(204,167)])
}
Add(Convertor,5361239,140,105)
{
Mode=1
link(onResult,14269358:doEvent1,[])
}
Add(BitBtn,2393174,219,362)
{
Left=60
Top=56
Width=25
Color=0
Font=[MS Sans Serif,8,1,16777215,1]
Caption="X"
Point(doColor)
link(onClick,9923200:doWork3,[(271,368)])
}
Add(Hub,6817628,182,224)
{
link(onEvent1,7986566:doSwitch,[])
link(onEvent2,2067687:doTimer,[(206,237)(206,321)])
}
Add(HubEx,9923200,267,343)
{
link(onEvent,8848704:doWork1,[])
}
Add(Timer,2067687,217,315)
{
Interval=555
Enable=1
AutoStop=1
link(onTimer,9923200:doWork1,[(271,321)])
}
END_SDK
Add(IndexToChanel,2345105,371,126)
{
Count=4
link(onEvent2,9053971:doClose,[(415,139)(415,111)(272,111)(272,167)])
link(onEvent4,12309937:doWork1,[])
}
Add(Menu,126380,329,119)
{
Menu=#9:Программа|1:(|4:Exit|1:)|8:СОМ-ПОРТ|1:(|5:Выбор|1:)|
Point(onSelectNum)
link(onSelectNum,2345105:doEvent,[])
}

а 555 время которое для моего глаза оптимально показалось... и конечно ассоциация с 555 таймером
Редактировалось 3 раз(а), последний 2019-01-26 07:46:02
карма: 4

0
22
Сообщение
...
Прикрепленные файлы
(файлы не залиты)