Бекжан Мукатов
Посетитель
Всего сообщений: 17
Дата регистрации: 06.01.2010
|
Создано:
01.09.2010 17:07:39
|
Для удобства хотелось бы программно закрывать все открытые окна, перед началом запуска макро, и открыть только протокол расчета. Подскажите пожалуйста возможно ли это
|
Андрей Крутенёв
Гость
|
Создано:
02.09.2010 17:43:25
|
Я тоже хочу!
Перед работой макроса закрыть все окна, а после окончания - загрузить область!
|
Михаил Реутов
Постоянный посетитель
Всего сообщений: 224
Дата регистрации: 21.11.2007
|
Создано:
02.09.2010 20:52:47
|
Цитата |
---|
Бекжан Мукатов пишет:
Для удобства хотелось бы программно закрывать все открытые окна, перед началом запуска макро |
Макрос тормозит при открытых окнах?
|
Бекжан Мукатов
Посетитель
Всего сообщений: 17
Дата регистрации: 06.01.2010
|
Создано:
06.09.2010 14:47:10
|
Да, после определенного промежутка времени, из-за большого количества обновлений значений в таблицах, графике, происходит аварийное завершение работы. Необходимо перед запуском закрывать все окна, открывать протокол, а после завершения расчета загружать область
|
Владимир Неуймин
Администратор
Всего сообщений: 268
Дата регистрации: 13.03.2007
|
Создано:
06.09.2010 15:13:35
|
Рекомендуется блокировать изменение открытых окон, например так:
Код |
---|
r=setlocale("en-us") ' установить разделитель точка для операций ввода-вывода
Rastr.LockEvent=True ' блокировка изменения информации в открытых окнах
Rastr.LogEnable=False ' блокировка вывода в протокол
' Текст макроса
'------------------------?----
'
NumParallel
'
'------------------------?----
Rastr.LogEnable=True
Rastr.LockEvent=False
Rastr.SendChangeData HINTR_CHANGE_ALL,"","",0 ' обновить содержимое открытых окон
|
|
Андрей Крутенёв
Гость
|
Создано:
13.09.2010 16:06:17
|
а закрыть все окна никак?
ибо работа макроса без них в разы, а то и десятки раз, быстрее проходит...
|
Владимир Неуймин
Администратор
Всего сообщений: 268
Дата регистрации: 13.03.2007
|
Создано:
14.09.2010 10:36:20
|
Выполнение не замедляется, если поставить
Rastr.LockEvent=True
до выполнения макроса
|
Михаил Реутов
Постоянный посетитель
Всего сообщений: 224
Дата регистрации: 21.11.2007
|
Создано:
14.09.2010 16:38:54
|
Цитата |
---|
Владимир Неуймин пишет:
Выполнение не замедляется, если поставить
Rastr.LockEvent=True
до выполнения макроса
|
На сколько я понимаю свойство Rastr.LockEvent=True позволяет не вызывать событие обновления информации в открытых окнах. Безусловно выполнение макросов "не замедляется". Однако открытое окно занимает память и ожидает сообщения от винды, чтобы вызывать события. Хотя это может быть и незначительно.
|
Андрей Крутенёв
Гость
|
Создано:
15.09.2010 16:55:21
|
Кстати, да!
В стандартном макросе "Удаление отмеченных узлов (с ветвями).rbs" не стоит эта конструкция!
в следующем билде стоило бы обновить макрос...
|