в режиме UseName=True верхние точки с разными именами не работают
вот пример в котором достаточно любую точку из DataPoints переименовать например из dat1 в bat1 и в коде sys.bat и приплыли. Пример не работает
code_10923.txt
Этот топик читают: Гость
Ответов: 5227
Рейтинг: 587
|
|||
карма: 4 |
| ||
файлы: 1 | code_10923.txt [944B] [1431] |
Главный модератор
Ответов: 2999
Рейтинг: 396
|
|||
Или ничего не понял, или всё работает
![]() |
|||
карма: 6 |
|
Ответов: 8938
Рейтинг: 824
|
|||
Nic,
andrestudio писал(а): переименовать например из dat1 в bat1 ![]() |
|||
карма: 19 |
| ||
файлы: 1 | error..png [6.9KB] [876] |
Ответов: 5227
Рейтинг: 587
|
|||
Nic, Выше в посте проделываю и получаю
Oбъeкт нe пoддepживaeт этo cвoйcтвo или мeтoд: 'bat2'
сам код такой code_10926.txt у верхней точки тоже имя bat2. Может у меня только такой криминал. ![]() |
|||
карма: 4 |
| ||
файлы: 1 | code_10926.txt [254B] [1391] |
Главный модератор
Ответов: 2999
Рейтинг: 396
|
|||
Да - это знакомый мне глюк. Лечится просто: заведи себе за правило называть точки или однотипно или с соблюдением латинского алфавита и их очередности
![]() ------------ Дoбавленo: Уже давно, Dilma объяснял почему это так, помню что ничего не понял, но принял на веру, что так надо и больше вопросов не задавал. ![]() |
|||
карма: 6 |
|
Ответов: 2125
Рейтинг: 159
|
|||
Не знаю, чего он там объяснял, но после замены на вот это
|
|||
карма: 1 |
|
Главный модератор
Ответов: 2999
Рейтинг: 396
|
|||
А на SVN выложить?
![]() |
|||
карма: 6 |
|
Ответов: 2125
Рейтинг: 159
|
|||
Усё будет, не спеши.
|
|||
карма: 1 |
| ||
Голосовали: | andrestudio |
Ответов: 5227
Рейтинг: 587
|
|||
tsdima, Спасибо большое
![]() Проверил, работает. Это большой плюс, пускай даже в своих кодах через некое время мы не увидим sys.dat1, sys.dat2 и т.д, всё же гораздо приятние видеть настоящие имена. Вот если бы ещё можно было коментарии через "=" делать к точкам было бы вообще замечательно (мне кажется что так и задумывалось), пробовал как то в окне подсказки коментарий отображается правельно но точка после этого стаёт не рабочей ![]() Nic, не знаю как Вы а я начинаю прописывать точки по новым правилам ![]() p.s как устал вставать на грабли (в своём возрасте) голова болит чес слово ![]() |
|||
карма: 4 |
|
Ответов: 2125
Рейтинг: 159
|
|||
andrestudio писал(а): Вот если бы ещё можно было коментарии через "=" А я-то блин думал, нафига используется Find, а не IndexOf ![]() ------------ Дoбавленo: andrestudio, исправь в коде IndexOf на IndexOfName. ------------ Дoбавленo: Пардон, чего-то не работает, щас выясню. ------------ Дoбавленo: А, ну да, там же знак = не всегда стоит ![]() ------------ Дoбавленo: Я поправил код выше, теперь работает. Только я не понял, как комментарии писать, чтобы они где-то высвечивались? |
|||
карма: 1 |
|
Ответов: 5227
Рейтинг: 587
|
|||
tsdima, знак = работает как делмер между именем и коментарием (это я так думаю) и пробовал я это прописывать в именах к точкам.
доконца не просёк куда этот код подставить, но сейчас попробую. |
|||
карма: 4 |
|
Главный модератор
Ответов: 2999
Рейтинг: 396
|
|||
tsdima писал(а): чтобы они где-то высвечивались?По крайней мере, при наведении мыши на точку, выдаются как коммент на баллоне. ![]() |
|||
карма: 6 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Nic, помоги пожалуйста если можешь.
Вобщем не могу понять как в скрипт предать параметры для методов обьекта. Постараюсь обьяснить как смогу (пример только вечером если что) Где параметры имеют формат тип стринг то нет проблем, это у меня получается, а вот нужно передать имена переменных и некие константы допустим, сами переменные в скрипте уже обьявлены и имеют значение типа int (проверил мессагой) сама строка (обьект.метод var1, var2,100 допустим так) если её подставить в скрипт, работает так вот не получается эту строку через точку метода скрипта doCommand допустим передать, выскакивает ошибка о не соответствии типа данных, мануалы всякие читал и ни чего не мог найти (у них просто нет HiAsm ![]() |
|||
карма: 4 |
|
Ответов: 2125
Рейтинг: 159
|
|||
andrestudio писал(а): склонить обьект принять стринг за имена переменныхДля этого можно написать функцию в скрипте, которая содержит select case и по строковому имени выдаёт значение переменной. Есть ещё одна фича, но скорее всего вряд-ли пригодится: если через нижнюю точку вернуть объект, то его свойства можно считывать (а также устанавливать) с помощью ArrayRW, задавая имя вместо индекса. Можно возвращать массив со всеми переменными и считывать их по индексу. |
|||
карма: 1 |
| ||
Голосовали: | andrestudio |
Ответов: 5227
Рейтинг: 587
|
|||
tsdima, спасибо.
Кстати я так и сделал на сей момент. Но может оказаться что имён может быть много и case соответствено код смешной не покажется ![]() ![]() Я думал что можно допустим как то функцию VarType(varname) применить или обьект какой нибудь для этих целей. пока писал мысля пришла попробовать связочку функций Replace(CStr) и VarType(varname) tsdima, к сожелению так и не понял что в коде который Вы выложили куда его приткнуть, может можно его как то целиком получить если коменты к точкам работают ![]() |
|||
карма: 4 |
|