У меня есть элемент управления, который позволяет пользователю выполнять некоторую обработку тяжелых изображений на определенной части изображения, и у них есть кнопки со стрелками для перемещения этой области вокруг изображения.Кнопка повтора Tapping
как процесс очень тяжелый (avg 800ms за один запуск) Я использовал кнопку повтора, которая превращает это в «Призрак» и выполняет этот процесс только при событии мыши.
Это работает очень хорошо, и решает большинство проблем производительности, связанные с этой функцией
ОДНАКО
определенной группой пользователей отказывающимся изучить этот метод удержания и освобождения и сохраняется в нажав на кнопку для перемещать, а не удерживать и отпускать.
Это означает, что метод тяжелого режима вызывается каждый раз, когда они нажимают, и когда он только движется с небольшим приращением каждый раз, когда срабатывает метод, поэтому они оказываются в зависании приложения, пока он пытается сделать> 100 из этих 800ms + процессы
МОЙ ВОПРОС
Как я могу справиться с этим выстукивая поведение таким же образом, как проведение и освобождение?
Я думал о таймере, но не могу понять, как бы я обнаружил разницу между нормальным краном и последним краном.
У вас может быть только флаг 'bool', который вы установили в true при запуске процесса и false, когда он будет завершен. Если флаг имеет значение true, пусть событие кнопки возвращается раньше, не запуская процесс. – Abion47
Вы можете использовать таймер, чтобы ждать, пока нет последовательных отводов в течение некоторого времени, чтобы начать тяжелую работу. Для серии кранов таймер будет перезапущен, а обработчик событий (содержащий тяжелую работу) не будет запущен. – Sinatr
Abion47 посоветовал вам сделать это с флагом. Вы попробовали? –