evgeni85 писал(а):Строка как таковая не формируется. В поле просто выводятся разные заранее введенные сообщения
достаточно просто написать здесь ваш код, обрамленный в теги [Code] с палитры форматирования этого сообщения
evgeni85 писал(а):Строка как таковая не формируется. В поле просто выводятся разные заранее введенные сообщения
bool pr_cmp
int pr_num, jet
char pr1[100], pr2[100], pr3[100], pr4[100], pr5[100], pr6[100], pr7[100], pr8[100], pr9[100], pr10[100]
char pr0[100]="НЕ ВЫБРАНА ПРОГРАММА программа программа"
char clear_pr[100]=""
char pr1_d[100]="Программа 1"
char pr2_d[100]="Программа 2"
char pr3_d[100]="Программа 3"
char pr4_d[100]="Программа 4"
char pr5_d[100]="Работа по давлению"
char pr6_d[100]="Программа 6"
char pr7_d[100]="Программа 7"
char pr8_d[100]="Программа 8"
char pr9_d[100]="Программа 9"
char pr10_d[100]="Программа 10"
GetData(pr_num, "OMRON CJ/CS/CP (Ethernet - FINS/TCP)", D, 74, 1)
GetData(pr1[0], "Local HMI", RW, 50, 100)
GetData(pr2[0], "Local HMI", RW, 150, 100)
GetData(pr3[0], "Local HMI", RW, 250, 100)
GetData(pr4[0], "Local HMI", RW, 350, 100)
GetData(pr5[0], "Local HMI", RW, 450, 100)
GetData(pr6[0], "Local HMI", RW, 550, 100)
GetData(pr7[0], "Local HMI", RW, 650, 100)
GetData(pr8[0], "Local HMI", RW, 750, 100)
GetData(pr9[0], "Local HMI", RW, 850, 100)
GetData(pr10[0], "Local HMI", RW, 950, 100)
pr_cmp=StringCompare(clear_pr[0], pr1[0])
if pr_cmp==true then
SetData(pr1_d[0], "Local HMI", RW, 50, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr2[0])
if pr_cmp==true then
SetData(pr2_d[0], "Local HMI", RW, 150, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr3[0])
if pr_cmp==true then
SetData(pr3_d[0], "Local HMI", RW, 250, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr4[0])
if pr_cmp==true then
SetData(pr4_d[0], "Local HMI", RW, 350, 100)
end if
//pr_cmp=StringCompare(clear_pr[0], pr5[0])
//if pr_cmp==true then
SetData(pr5_d[0], "Local HMI", RW, 450, 100)
//end if
pr_cmp=StringCompare(clear_pr[0], pr6[0])
if pr_cmp==true then
SetData(pr6_d[0], "Local HMI", RW, 550, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr7[0])
if pr_cmp==true then
SetData(pr7_d[0], "Local HMI", RW, 650, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr8[0])
if pr_cmp==true then
SetData(pr8_d[0], "Local HMI", RW, 750, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr9[0])
if pr_cmp==true then
SetData(pr9_d[0], "Local HMI", RW, 850, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr10[0])
if pr_cmp==true then
SetData(pr10_d[0], "Local HMI", RW, 950, 100)
end if
select case pr_num
case 0
SetData(pr0[0], "Local HMI", RW, 0, 50)
break
case 1
SetData(pr1[0], "Local HMI", RW, 0, 50)
break
case 2
SetData(pr2[0], "Local HMI", RW, 0, 50)
break
case 3
SetData(pr3[0], "Local HMI", RW, 0, 50)
break
case 4
SetData(pr4[0], "Local HMI", RW, 0, 50)
break
case 5
SetData(pr5[0], "Local HMI", RW, 0, 50)
break
case 6
SetData(pr6[0], "Local HMI", RW, 0, 50)
break
case 7
SetData(pr7[0], "Local HMI", RW, 0, 50)
break
case 8
SetData(pr8[0], "Local HMI", RW, 0, 50)
break
case 9
SetData(pr9[0], "Local HMI", RW, 0, 50)
break
case 10
SetData(pr10[0], "Local HMI", RW, 0, 50)
break
end select
evgeni85 писал(а):
- Код: Выделить всё
bool pr_cmp
int pr_num, jet
char pr1[100], pr2[100], pr3[100], pr4[100], pr5[100], pr6[100], pr7[100], pr8[100], pr9[100], pr10[100]
char pr0[100]="НЕ ВЫБРАНА ПРОГРАММА программа программа"
char clear_pr[100]=""
char pr1_d[100]="Программа 1"
char pr2_d[100]="Программа 2"
char pr3_d[100]="Программа 3"
char pr4_d[100]="Программа 4"
char pr5_d[100]="Работа по давлению"
char pr6_d[100]="Программа 6"
char pr7_d[100]="Программа 7"
char pr8_d[100]="Программа 8"
char pr9_d[100]="Программа 9"
char pr10_d[100]="Программа 10"
GetData(pr_num, "OMRON CJ/CS/CP (Ethernet - FINS/TCP)", D, 74, 1)
GetData(pr1[0], "Local HMI", RW, 50, 100)
GetData(pr2[0], "Local HMI", RW, 150, 100)
GetData(pr3[0], "Local HMI", RW, 250, 100)
GetData(pr4[0], "Local HMI", RW, 350, 100)
GetData(pr5[0], "Local HMI", RW, 450, 100)
GetData(pr6[0], "Local HMI", RW, 550, 100)
GetData(pr7[0], "Local HMI", RW, 650, 100)
GetData(pr8[0], "Local HMI", RW, 750, 100)
GetData(pr9[0], "Local HMI", RW, 850, 100)
GetData(pr10[0], "Local HMI", RW, 950, 100)
pr_cmp=StringCompare(clear_pr[0], pr1[0])
if pr_cmp==true then
SetData(pr1_d[0], "Local HMI", RW, 50, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr2[0])
if pr_cmp==true then
SetData(pr2_d[0], "Local HMI", RW, 150, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr3[0])
if pr_cmp==true then
SetData(pr3_d[0], "Local HMI", RW, 250, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr4[0])
if pr_cmp==true then
SetData(pr4_d[0], "Local HMI", RW, 350, 100)
end if
//pr_cmp=StringCompare(clear_pr[0], pr5[0])
//if pr_cmp==true then
SetData(pr5_d[0], "Local HMI", RW, 450, 100)
//end if
pr_cmp=StringCompare(clear_pr[0], pr6[0])
if pr_cmp==true then
SetData(pr6_d[0], "Local HMI", RW, 550, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr7[0])
if pr_cmp==true then
SetData(pr7_d[0], "Local HMI", RW, 650, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr8[0])
if pr_cmp==true then
SetData(pr8_d[0], "Local HMI", RW, 750, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr9[0])
if pr_cmp==true then
SetData(pr9_d[0], "Local HMI", RW, 850, 100)
end if
pr_cmp=StringCompare(clear_pr[0], pr10[0])
if pr_cmp==true then
SetData(pr10_d[0], "Local HMI", RW, 950, 100)
end if
select case pr_num
case 0
SetData(pr0[0], "Local HMI", RW, 0, 50)
break
case 1
SetData(pr1[0], "Local HMI", RW, 0, 50)
break
case 2
SetData(pr2[0], "Local HMI", RW, 0, 50)
break
case 3
SetData(pr3[0], "Local HMI", RW, 0, 50)
break
case 4
SetData(pr4[0], "Local HMI", RW, 0, 50)
break
case 5
SetData(pr5[0], "Local HMI", RW, 0, 50)
break
case 6
SetData(pr6[0], "Local HMI", RW, 0, 50)
break
case 7
SetData(pr7[0], "Local HMI", RW, 0, 50)
break
case 8
SetData(pr8[0], "Local HMI", RW, 0, 50)
break
case 9
SetData(pr9[0], "Local HMI", RW, 0, 50)
break
case 10
SetData(pr10[0], "Local HMI", RW, 0, 50)
break
end select
evgeni85 писал(а):Мне нужно выводить текст в несколько строк. Так как в одну он не входит.
char pr_1[40]="stroka1"
char pr_2[20]="stroka2"
char perenos[1]
FILL(perenos[0], 0xA, 1)
StringCat(perenos[0], pr_1[0])
StringCat(pr_2[0], pr_1[0])
StringSet(pr_1[0], "Local HMI", LW, 0, 40)
evgeni85 писал(а):Создаю функциональную кнопку с двумя состояниями. У кнопки есть метка. В нормальном состоянии метка как и нужно отображается по центру. Но в нажатом состоянии она почему то перемещается в левый верхний угол. Хотя атрибуты одинаковые для обоих состояний. Как от этого избавиться?
evgeni85 писал(а):Мне нужно выводить текст в несколько строк. Так как в одну он не входит.
char a[10]="test"
char b[5]="1234"
a[4]= 0xA
StringCat(b[0],a[0])
StringSet(a[0], "Local HMI", LW, 0, 10)
Сейчас этот форум просматривают: AlexandrGr, Bing [Bot] и гости: 86