Подскажите как реализовать следующее:
Есть GlobalVar 'data1' распихан в схеме в кол-ве 5шт, есть GlobalVar 'data2' в количестве 3шт.
Требуется чтобы изменив имя первого GlobalVar у остальных оно тоже сменилось.
т.е. 'data1' 5шт допустим переименовались в 'data11', а 3шт 'data2' переименовались в 'data22'
Есть может у кого модифицированный компонент или идеи?
Этот топик читают: Гость
Ответов: 655
Рейтинг: 18
|
|||
карма: 0 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
Где-то был компонент GlobalVarEx, который при изменении вызывает события у всех таких же глобальных переменных. Так вот просто заведите один такой GlobalVarEx с именем var_name, а событие изменения повесьте на doName у нужных GlobalVar. И не надо никаких других компонентов
Редактировалось 2 раз(а), последний 2016-11-22 19:53:22 |
|||
карма: 10 |
| ||
Голосовали: | Gunnman |
Ответов: 655
Рейтинг: 18
|
|||
Assasin, Спасибо! Есть несколько версий GlobalVarEx...ссылки которые нахожу битые, у вас случайно нет живой ссылки?
|
|||
карма: 0 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
Gunnman, вот этого не могу дать, я сам этим компонентом не пользовался. Может, тут мимо будут проходить те, кто пользовался (или даже сам автор ), они могут подсказать.
|
|||
карма: 10 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Gunnman писал(а): Есть несколько версий GlobalVarEx...ссылки которые нахожу битые, у вас случайно нет живой ссылки?http://forum.hiasm.com/getfile/37981 Редактировалось 2 раз(а), последний 2017-01-08 08:29:23 |
|||
карма: 9 |
| ||
Голосовали: | Konst, Gunnman |
Ответов: 1328
Рейтинг: 69
|
|||
Опечатка в описании SkipOwn=При =True, реакция onValue на "свой" метод doValue - пропускается, а есть реВкция только на чужой|14|1|True,False
Редактировалось 1 раз(а), последний 2016-11-29 01:44:46 |
|||
карма: 2 |
|
Ответов: 9906
Рейтинг: 351
|
|||
карма: 9 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Решил таки обновить GlobalVarEx ...
(GlobalVarEx) Причины: некорректность использования метода doName. Данные для старого имени НЕ УБИВАЮТСЯ. В штатном GlobalVar, кстати говоря - тоже. Для того, чтобы это делать корректно, нужен некий счетчик ссылок. А в Ex-е это уже как бы есть - убивать можно, если "список оповещения" становится пустым. Т.е. - малой кровью. Таковую утечку памяти (как и ее отсутствие) можно посмотреть в такой схеме:
Предупреждение: использовать GlobalVar и GlobalVarEx с одним именем НИЗЯ. Присвоение в GlobalVar убивает "список оповещения" в GlobalVarEx. И теперь еще и наоборот, после уничтожения переменной с пустым "списком оповещения" в GlobalVarEx - GlobalVar с этим именем будет тупо падать (AV) В общем, я предупредил Редактировалось 6 раз(а), последний 2017-01-08 08:26:48 |
|||
карма: 9 |
|
Ответов: 655
Рейтинг: 18
|
|||
Galkov, прошу подтвердить\опровергнуть баг: при skipown = false , на onValue выдается 2 события, при true 1...
В предыдущей версии компонента все было гладко (при false 1 событие на onValue, при true - 0) |
|||
карма: 0 |
| ||
Голосовали: | Galkov |
Ответов: 9906
Рейтинг: 351
|
|||
Да, действительно. Обновил (аттач в этом посте)
Не совсем правильно дело пошло... Надо было сразу заводить свой onNotify, а не пришпиливаться к событию onValue, который завел nesco И не заморачиваться со всякими SkipOwn |
|||
карма: 9 |
| ||
файлы: 1 | GlobalVarEx.rar [1.5KB] [643] | ||
Голосовали: | Gunnman, Konst |
10