Вверх ↑
Этот топик читают: Гость
Ответов: 11
Рейтинг: 0
#1: 2020-03-25 15:15:24 ЛС | профиль | цитата
Здравствуйте! Застрял над простой с виду задачкой: нужно "запомнить" список строк как переменную, для дальнейшего использования в коде.
Не получается корректно произвести обратную конверсию из переменной в список строк: у меня либо формируется единая строка, вместо списка, либо появляются лишние переносы.

Помогите исправить схему

Add(Button,11825027,210,217)
{
Left=90
Top=100
Caption="Вариант 1"
link(onClick,1681615:doEvent1,[])
}
Add(Hub,1681615,357,217)
{
OutCount=3
link(onEvent1,14990526:doData,[(392,223)(392,132)])
link(onEvent2,11332670:doEnum,[])
link(onEvent3,4046291:doMessage,[(404,237)(404,300)])
}
Add(DoData,14990526,413,126)
{
link(onEventData,2145195:doValue,[])
link(Data,10027324:Text,[])
}
Add(GlobalVar,2145195,469,126)
{
Name="var"
}
Add(GlobalVar,13815459,427,196)
{
Name="var"
}
Add(StrList,10027324,413,70)
{
Strings=#71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_26_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_27_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_28_boy.pdf|
}
Add(StrList,2854980,480,224)
{
}
Add(Str_Enum,11332670,427,224)
{
Delimiter="\r\n"
link(onEnum,2854980:doAdd,[])
link(String,13815459:Var,[])
}
Add(Message,4046291,480,294)
{
link(Message,2854980:Text,[(486,275)(486,275)])
}
Add(PointHint,950744,332,32)
{
Info=#58:В этом варианте появляются лишние переносы строки в списке|
Transparent=0
VAlign=0
Width=537
Height=372
}
Add(Button,7140033,207,610)
{
Left=90
Top=130
Caption="Вариант 2"
link(onClick,1608297:doEvent1,[])
}
Add(Hub,1608297,354,610)
{
OutCount=3
link(onEvent1,940997:doData,[(389,616)(389,525)])
link(onEvent2,273713:doAdd,[])
link(onEvent3,7925688:doData,[(398,630)(398,727)])
}
Add(DoData,940997,410,519)
{
link(onEventData,8194553:doValue,[])
link(Data,6683265:Text,[])
}
Add(GlobalVar,8194553,466,519)
{
Name="var"
}
Add(GlobalVar,16643567,477,589)
{
Name="var"
}
Add(StrList,6683265,410,463)
{
Strings=#71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_26_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_27_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_28_boy.pdf|
}
Add(StrList,273713,477,617)
{
link(Str,16643567:Var,[(483,610)(483,610)])
}
Add(PointHint,14252964,329,425)
{
Info=#46:А здесь мы получаем одну строку вместо четырех|
Transparent=0
VAlign=0
Width=537
Height=372
}
Add(ArrayEnum,13868240,491,721)
{
link(onItem,10431182:doMessage,[])
link(Array,273713:Array,[])
}
Add(Memory,16090510,427,679)
{
Default=Integer(0)
}
Add(DoData,7925688,427,721)
{
link(onEventData,13868240:doEnum,[])
link(Data,16090510:Value,[])
}
Add(Message,10431182,546,721)
{
}


Редактировалось 1 раз(а), последний 2020-03-25 15:15:54
карма: 0

0
Ответов: 207
Рейтинг: 14
#2: 2020-03-25 16:21:36 ЛС | профиль | цитата
Не совсем понятна "задачка"
Может так.

Add(MainForm,2953706,21,105)
{
Width=450
Height=344
}
Add(Button,11825027,28,231)
{
Left=10
Top=10
Width=60
Caption="Вариант 1"
link(onClick,1681615:doEvent1,[])
}
Add(Hub,1681615,175,231)
{
link(onEvent1,14990526:doData,[(210,237)(210,146)])
link(onEvent2,12888323:doAdd,[])
}
Add(DoData,14990526,231,140)
{
link(onEventData,2145195:doValue,[])
link(Data,10027324:Text,[])
}
Add(GlobalVar,2145195,287,140)
{
Name="var"
}
Add(GlobalVar,13815459,319,203)
{
Name="var"
}
Add(StrList,10027324,231,84)
{
Strings=#71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_26_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_27_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_28_boy.pdf|
}
Add(PointHint,950744,150,46)
{
Info=#58:В этом варианте появляются лишние переносы строки в списке|
Transparent=0
VAlign=0
Width=537
Height=372
}
Add(Button,7140033,25,624)
{
Left=5
Top=155
Width=60
Caption="Вариант 2"
link(onClick,1608297:doEvent1,[])
}
Add(Hub,1608297,172,624)
{
OutCount=3
link(onEvent1,940997:doData,[(207,630)(207,532)])
link(onEvent2,273713:doAdd,[])
link(onEvent3,13868240:doEnum,[(207,644)(207,741)])
}
Add(DoData,940997,242,526)
{
link(onEventData,8194553:doValue,[])
link(Data,6683265:Text,[])
}
Add(GlobalVar,8194553,298,526)
{
Name="var"
}
Add(GlobalVar,16643567,295,603)
{
Name="var"
}
Add(StrList,6683265,242,470)
{
Strings=#71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_26_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_27_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_28_boy.pdf|
}
Add(StrList,273713,295,631)
{
link(Str,16643567:Var,[])
}
Add(PointHint,14252964,147,439)
{
Info=#46:А здесь мы получаем одну строку вместо четырех|
Transparent=0
VAlign=0
Width=537
Height=372
}
Add(ArrayEnum,13868240,309,735)
{
link(onItem,852657:doAdd,[])
link(Array,273713:Array,[])
}
Add(RichEdit,852657,385,735)
{
Left=5
Top=185
Width=425
Height=115
}
Add(RichEdit,12888323,319,238)
{
Left=5
Top=30
Width=425
Height=115
link(Str,13815459:Var,[(325,231)(325,231)])
}
карма: 2

0
Ответов: 11
Рейтинг: 0
#3: 2020-03-25 16:34:29 ЛС | профиль | цитата
Joiner писал(а):
Не совсем понятна "задачка"
Может так.

}


А вот так посмотрите - во втором варианте при переборе массива, полученного из переменной, мы в первой же итерации получаем "кашу".

В первом варианте такого не происходит, но элемент RichEdit нельзя засунуть в MultiElementEx, а без этого сложно работать будет.


Add(Button,5133550,889,217)
{
Left=10
Top=10
Width=60
Caption="Вариант 1"
link(onClick,11457502:doEvent1,[])
}
Add(Hub,11457502,1036,217)
{
OutCount=3
link(onEvent1,5174259:doData,[(1071,223)(1071,132)])
link(onEvent2,12888323:doAdd,[])
link(onEvent3,2780806:doEnum,[(1122,237)(1122,286)])
}
Add(DoData,5174259,1092,126)
{
link(onEventData,9133904:doValue,[])
link(Data,3509939:Text,[])
}
Add(GlobalVar,9133904,1148,126)
{
Name="var"
}
Add(GlobalVar,9060072,1180,189)
{
Name="var"
}
Add(StrList,3509939,1092,70)
{
Strings=#71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_26_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_27_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_28_boy.pdf|
}
Add(PointHint,5514959,1011,32)
{
Info=#58:В этом варианте появляются лишние переносы строки в списке|
Transparent=0
VAlign=0
Width=537
Height=372
}
Add(Button,10607886,886,610)
{
Left=5
Top=155
Width=60
Caption="Вариант 2"
link(onClick,2027725:doEvent1,[])
}
Add(Hub,2027725,1033,610)
{
OutCount=3
link(onEvent1,14613020:doData,[(1068,616)(1068,518)])
link(onEvent2,12869893:doAdd,[])
link(onEvent3,5212858:doEnum,[(1068,630)(1068,727)])
}
Add(DoData,14613020,1103,512)
{
link(onEventData,11319692:doValue,[])
link(Data,4999577:Text,[])
}
Add(GlobalVar,11319692,1159,512)
{
Name="var"
}
Add(GlobalVar,13294381,1156,589)
{
Name="var"
}
Add(StrList,4999577,1103,456)
{
Strings=#71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_26_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_27_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_28_boy.pdf|
}
Add(StrList,12869893,1156,617)
{
link(Str,13294381:Var,[])
}
Add(PointHint,14209733,1008,425)
{
Info=#46:А здесь мы получаем одну строку вместо четырех|
Transparent=0
VAlign=0
Width=537
Height=372
}
Add(ArrayEnum,5212858,1170,721)
{
link(onItem,13003263:doMessage,[])
link(Array,12869893:Array,[])
}
Add(RichEdit,12888323,1180,224)
{
Left=5
Top=30
Width=425
Height=115
link(Str,9060072:Var,[])
}
Add(ArrayEnum,2780806,1194,280)
{
link(onItem,11629910:doMessage,[(1235,286)(1235,286)])
link(Array,12888323:Array,[])
}
Add(Message,11629910,1244,280)
{
}
Add(Message,13003263,1224,721)
{
}

карма: 0

0
Ответов: 207
Рейтинг: 14
#4: 2020-03-25 16:52:19 ЛС | профиль | цитата
dimazelensky писал(а):
RichEdit нельзя засунуть в MultiElementEx

RichEdit вставил для примера.
Что в этой схеме не так?

Add(MainForm,13336241,112,77)
{
}
Add(Button,5133550,77,217)
{
Left=10
Top=10
Width=60
Caption="Вариант 1"
link(onClick,11457502:doEvent1,[])
}
Add(Hub,11457502,224,217)
{
OutCount=3
link(onEvent1,5174259:doData,[(259,223)(259,132)])
link(onEvent2,13769308:doAdd,[])
link(onEvent3,2780806:doEnum,[(306,237)(306,286)])
}
Add(DoData,5174259,280,126)
{
link(onEventData,9133904:doValue,[])
link(Data,3509939:Text,[])
}
Add(GlobalVar,9133904,336,126)
{
Name="var"
}
Add(GlobalVar,9060072,368,196)
{
Name="var"
}
Add(StrList,3509939,280,70)
{
Strings=#71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_26_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_27_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_28_boy.pdf|
}
Add(ArrayEnum,2780806,382,280)
{
link(onItem,11629910:doMessage,[])
link(Array,13769308:Array,[])
}
Add(Message,11629910,439,280)
{
}
Add(StrList,13769308,368,224)
{
link(Str,9060072:Var,[])
}

карма: 2

0
Ответов: 11
Рейтинг: 0
#5: 2020-03-25 17:16:23 ЛС | профиль | цитата
Joiner писал(а):
dimazelensky писал(а):
RichEdit нельзя засунуть в MultiElementEx

RichEdit вставил для примера.
Что в этой схеме не так?


Посмотрите скриншот - первым же элементом перебор массива выдает все строки, вместо первой.


карма: 0

0
Ответов: 207
Рейтинг: 14
#6: 2020-03-25 17:21:03 ЛС | профиль | цитата

Add(MainForm,13336241,112,105)
{
}
Add(Button,5133550,105,224)
{
Left=10
Top=10
Width=60
Caption="Вариант 1"
link(onClick,11457502:doEvent1,[])
}
Add(Hub,11457502,252,224)
{
OutCount=3
link(onEvent1,5174259:doData,[(287,230)(287,139)])
link(onEvent2,16397962:doText,[(363,237)(363,258)])
link(onEvent3,2780806:doEnum,[(338,244)(338,307)])
}
Add(DoData,5174259,308,133)
{
link(onEventData,9133904:doValue,[])
link(Data,3509939:Text,[])
}
Add(GlobalVar,9133904,364,133)
{
Name="var"
}
Add(GlobalVar,9060072,396,196)
{
Name="var"
}
Add(StrList,3509939,308,77)
{
Strings=#71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_26_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_27_boy.pdf|71:152570_187474_729042_148003_12-03-20_namebook_softcover_book_28_boy.pdf|
}
Add(ArrayEnum,2780806,410,301)
{
link(onItem,11629910:doMessage,[])
link(Array,16397962:Array,[])
}
Add(Message,11629910,481,301)
{
}
Add(StrList,16397962,396,231)
{
link(Str,9060072:Var,[])
}

карма: 2

0
Ответов: 11
Рейтинг: 0
#7: 2020-03-25 17:32:23 ЛС | профиль | цитата
Спасибо!
карма: 0

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