Добрый день!
Ситуация.
Есть таблица. В ней отображаются данные SQL запроса. Необходимо из первого (начинаем отсчет с 0) столбца таблицы и выделенной строки взять текст ячейки на пересечении (если нет выделенной то значение RowIndex = -1).
После этого добавить к этому тексту следующий текст "_SPI_Set" и присвоить это переменной, которая используется для подмены переменных.
Есть 2 скрипта универсальный (привязан к кнопке) и секундный. Пытались сделать одинаковые (по смыслу и тексту) скрипты.
Надеюсь понятно объяснил.
Теперь вопросы.
В1. Выражение var:=table.Columns(1).Cells(table.RowIndex).Text + "_SPI_Set", где var:string, Text: UTF8String считаем текст в скобочках тоже string в универсальном скрипте работает, в секундном нет. При этом если использовать преобразование типов UTF8toStr секундный все равно не работает.
Почему?В2. Поставили маяки значений. Вывели на экран. Кратко - использовали if. Т.е.:
...
metka := $FFFF;
if True then
metka := $F000
else
begin
metka := $000F;
exit;
end;
...
В результате значение metka:=$FFFF не увидели. Предполагаем это происходило во время перезапуска проекта. По кнопке универсальный скрипт работает. Секундный нет, вернее всего скорей работает поскольку значение metka:=$000F и не меняется.
Используется ли в скриптах или свойствах объектов привязка к экрану или есть механизм фокуса на объекте? Возможно поэтому секундный скрипт и не работает поскольку "не знает своей привязки"? Задавайте вопросы.