Вверх ↑
Ответов: 2059
Рейтинг: 132
#1: 2022-02-16 17:33:30 ЛС | профиль | цитата
sla8a писал(а):
ser_davkin, логичнее будет сделать так:

Причём здесь схема вообще?!!!
Компонент не работает!!!
Можно как то это объяснить
1: Pos := Length(str) - Count - Pos + 2;
в контексте кода?!
Менять case на If смысла особого нет.

Можно и с case сделать, но лучше делать не запутанный, легко читаемый код.
Кстати, из за этого всё и поплыло. Запутались в нулях какой end; к чему относится.
как в вашей реализации можно скопировать последних 12 символов?

В компоненте не заложен метод отсчёта от длины(конца строки).
Подавай в качестве позиции длину строки, Count=12 и отсчёт справа налево.
Add(MainForm,2953706,21,105)
{
Height=188
}
Add(Edit,9403533,252,35)
{
Left=20
Top=10
Width=255
Text="Edithdfgdfgqwerty"
}
Add(Edit,5936633,427,133)
{
Left=20
Top=40
Width=245
}
Add(Button,9939578,154,133)
{
Left=25
Top=70
link(onClick,7088663:doLength,[])
}
Add(Copy,5016563,322,133)
{
Count=12
Direction=1
link(onCopy,5936633:doText,[])
link(Str,5989022:Var3,[(328,89)])
}
Add(Length,7088663,252,133)
{
link(onLength,5016563:doCopy,[])
link(Str,5989022:Var2,[])
}
Add(GetDataEx,5989022,252,84)
{
link(Data,9403533:Text,[])
}

Вот и всё.
карма: 6

0
Редактировалось 4 раз(а), последний 2022-02-16 17:49:49