AIMP Forum

AIMP для Windows => Skin Editor / Skin Engine => Вопросы => Topic started by: Kibermanick on May 08, 2020, 21:59:50

Title: Событие останавливает выполнения скрипта
Post by: Kibermanick on May 08, 2020, 21:59:50
Мной было замечанно следующие. При выполнении события обрабатывающего положение курсора, останавливается выполнение скрипта(плавное изменение прозрачности с использованием таймера). В обоих случаях эксплуатируется то, что курсор над одним и тем же элементом(панель). И событие, и скрипт, одновременно вносят изменение в свойства одного элемента, а точнее его положение и прозрачность.

Вопрос. Это можно сделать работающим вместе, одновременно, или так не получиться введу того что, это нарушает какую то логику работы программы?
Title: Re: Событие останавливает выполнения скрипта
Post by: Kibermanick on May 08, 2020, 22:02:07
Уточню что курсор над другим элементом чем тот в который вносятся изменения.
Title: Re: Событие останавливает выполнения скрипта
Post by: Artem on May 09, 2020, 22:42:31
В интерфейсе программы ничего не может работать одновременно - работает что-то одно. Тот же таймер - он выполняет какое-то действие 1 раз за интервал. Пока он действие не выполнил - ничего другое не может изменить интерфейс.
Title: Re: Событие останавливает выполнения скрипта
Post by: Black_AVP on May 10, 2020, 11:43:55
В чём, конкретно, проблема и в чём задача, пример можно?
Из двух противоречивых цитат понять что-то сложно:
... В обоих случаях эксплуатируется то, что курсор над одним и тем же элементом(панель).
Уточню что курсор над другим элементом чем тот в который вносятся изменения.
Title: Re: Событие останавливает выполнения скрипта
Post by: Kibermanick on May 13, 2020, 20:01:55
Странно не могу повторить проблему на тестовом проекте, хотя все идентично.
Title: Re: Событие останавливает выполнения скрипта
Post by: Kibermanick on May 13, 2020, 20:12:21
вот у меня пока курсор двигается над панелью строка показывающая позицию скрипта замораживается как и отработка самого изменения прозрачности
Title: Re: Событие останавливает выполнения скрипта
Post by: Kibermanick on May 13, 2020, 20:19:14
хотя если увеличить размер аниматора на 1000*1000 то будит аналогичная проблема о которой  говорил
Title: Re: Событие останавливает выполнения скрипта
Post by: Black_AVP on May 14, 2020, 11:13:56
хотя если увеличить размер аниматора на 1000*1000 то будит аналогичная проблема о которой  говорил
Ну, с такими аниматорами в любом случае будут проблемы со всей остальной анимацией, от железа, конечно , зависит.
Но, я, всё же, сделал бы по-другому: раз уж используется аниматор, то надо и использовать его анимацию, при этом отпадает надобность и в таймере и в счётчиках. Где-то я уже выкладывал пример с анимцией кнопки при наведении, но так и не нашёл, принцип тот же. Добавил и его во вложение.
А вообще, именно перемещение компонентов заметно нарягает проц.
-
Нашёл после времени - https://www.aimp.ru/forum/index.php?topic=62171.msg384712#msg384712
Title: Re: Событие останавливает выполнения скрипта
Post by: Kibermanick on May 14, 2020, 12:59:29
Ну аниматор мне не уперся, я все ровно использовал его как однокадровую текстуру. Можно конечно и Gauge для изменения прозрачности использовать но, придется с кадрами запариваться и это увеличит вес обложки.

Я пока все таки не понимаю почему оно у меня тормозит, там аниматор не большого размера и без анимации.
Title: Re: Событие останавливает выполнения скрипта
Post by: Black_AVP on May 14, 2020, 13:17:00
Я пока все таки не понимаю почему оно у меня тормозит, там аниматор не большого размера и без анимации.
В данном примере у себя я тормозов не заметил, но при перемещении аниматора нагрузка на проц возрастает порой до 3-4%.

Использование аниматора (его собственной анимации) всегда предпочтительней, поскольку это делает сам плеер, а приоритет сообщений, посылаемых таймером всегда ниже.
Title: Re: Событие останавливает выполнения скрипта
Post by: Kibermanick on May 14, 2020, 14:02:02
В данном примере у себя я тормозов не заметил, но при перемещении аниматора нагрузка на проц возрастает порой до 3-4%.

:) хо хо всего то. Я привык что нагрузка иногда скочит до 20%. Ну в примере прикрепленным мной и нет этой проблемы, о чем я уже сказал, и я не могу понять что же не так ведь все идентично.