Обновление пользовательской таблицы/окна

Страницы: Пред. 1 2
RSS
Обновление пользовательской таблицы/окна
 
Запустил ваш код - также на работает. Каждый тик данные не обновляются.
 
Цитата
sav 312 написал:
Запустил ваш код - также на работает. Каждый тик данные не обновляются.
Даже больше скажу, чередовал наименования
SetWindowCaption(t_id, "ООО")
SetWindowCaption(t_id, "ОGО")
результата нет.
 
sav 312,
Возможно терминал чем-то нагружен?
К сожалению у нас догадки кончились.
Проблема не воспроизводится.

Изначально же, суть в том что в терминале окна перерисовываются раз в 50мс. И если скриптом обновлять таблицу чаще, то она не успевает обновляться, в результате происходит эффект заморозки.
Лечится это как уже говорили другие пользователи принудительной перерисовкой окна, либо увеличением sleep до значений больше 50.
 
Цитата
Sergey Gorokhov написал:
Возможно терминал чем-то нагружен?
Нет ничего лишнего. Один инструмент и один график. Скрипт тоже один.
Цитата
Sergey Gorokhov написал:
Лечится это как уже говорили другие пользователи принудительной перерисовкой окна
Это вариант работает, только окно постоянно активно и соответственно невозможно сделать активными другие окна.
Цитата
Sergey Gorokhov написал:
увеличением sleep до значений больше 50
Блин, ставил и 100 и 200 - в моем случае нет результата. В данный момент выделяю 2 строки поочередно и все обновляется каждый тик. Мигание правда достает, а так результат достигнут.
Да и забыл сказать стоит в main добавить строку обращения к графику по идентификатору т.е. чуть подгружаем скрипт и все сразу работает. Почему со sleep не прокатывает сам не пойму.
 
Цитата
Sergey Gorokhov написал:
Изначально же, суть в том что в терминале окна перерисовываются раз в 50мс.
Вот так если не окончательно понятно, то во всяком случае более-менее. У меня проблема воспроизводится как раз при слипе меньше 50. 45 еще нифига не работает, 50 уже более-менее тикает (иногда дергается). Квик свежий джуниор отсюда.
Или вы это раньше не писали или я пропустил )) Видимо из этой цифры и придется исходить. Приемлимых способов форсировать перерисовку окна я не вижу, на системные пинки от винды оно точно так же не реагирует.


Цитата
sav 312 написал:
SetWindowCaption
У мнея тоже ничего не дает, вчера еще пробовал. От нее впрочем и не ожидалось, капшн таки не клиентская часть окна, поэтому даже упоминать не стал.
 
Возникает мысль обновлять таблицы которые необходимо отображать на экране например 1 раз в 20 тиков, человек же все равно не разглядит быстрее. А то что нужно для работы роботу держать в другой таблице. Тоже костыль но он хотя-бы не будет много дополнительных ресурсов гонять.
 
Цитата
sav 312 написал:
Почему со sleep не прокатывает сам не пойму.

А он в принципе работает?
Т.е. если вообще написать
message("begin")
sleep(100500)
message("end")
что произойдет?

И уточните версию терминала.
 
Цитата
Sergey Gorokhov написал:
message("begin")sleep(100500)message("end")что произойдет?
Работает. Второе сообщение получил с нужной задержкой.
Цитата
Sergey Gorokhov написал:
И уточните версию терминала.
7.19.3.1
 
sav 312,
Идей нет.
Пришлите нам копию Вашего терминала (без ключей доступа) на адрес quiksupport@arqatech.com
 
sav 312,
Хотя есть идея попросить повторить на другом компьютере, если это возможно.
 
Цитата
Sergey Gorokhov написал:
Хотя есть идея попросить повторить на другом компьютере, если это возможно.
Да, конечно. Попробую минут через 40.
 
На другом компе со sleep 100 работает, а с SetWindowCaption также нет.
 
Цитата
sav 312 написал:
с SetWindowCaption также нет.
Мне вот интересно с чего возникало предположение что вообще может работать. Отображением заголовка окна разве сам оконный класс "заведует"? Я разумеется исходников не видел и не могу знать точно.
Но могу подтвердить что у меня тоже SetWindowCaption абсолютно ничего не дает.


Цитата
Sergey Gorokhov написал:
Изначально же, суть в том что в терминале окна перерисовываются раз в 50мс.
Еще такой к вам вопрос. Допустим я то что должно отображаться буду обновлять 2 раза в секунду, моему человеческому восприятию чаще и незачем. Судя по обсуждению можно считать что точно обновится, так?
 
Цитата
BlackBoar написал:
SetWindowCaption
Дошло на 3й час )))
Если тема темная то заголовки действительно рисует оконный класс и SetWindowCaption действительно форсирует отрисовку
А если тема стандартная то заголовки в компетенции венды и все как обычно.

Ну может кому-то будет полезно, мне лично темная тема просто не нравится. Но будем знать.
 
Цитата
BlackBoar написал:
Допустим я то что должно отображаться буду обновлять 2 раза в секунду, моему человеческому восприятию чаще и незачем. Судя по обсуждению можно считать что точно обновится, так?
Да верно.

Цитата
BlackBoar написал:
Если тема темная то заголовки действительно рисует оконный класс и SetWindowCaption действительно форсирует отрисовкуА если тема стандартная то заголовки в компетенции венды и все как обычно.
Вы правы, скрипт тестировался на темной теме.

Цитата
sav 312 написал:
На другом компе со sleep 100 работает, а с SetWindowCaption также нет.
С SetWindowCaption разобрались, см выше.
А вот что делать со sleep, к сожалению затруднимся что либо порекомендовать.
Пока только ясно что проблема локальная и связана с конкретным компьютером, скорей всего с процессором.
Но что это может быть, к сожалению идей нет.
Страницы: Пред. 1 2
Читают тему (гостей: 1)
Наверх