Как определить эффекты перехода на рабочем столе?
-
06-07-2019 - |
Вопрос
Я хочу свернуть приложение, сделать снимок текущего рабочего стола и вернуть приложение в исходное состояние.
Это нормально работало в Windows XP, однако при тестировании на разных компьютерах Vista время минимизации 200 миллисекунд больше не действует.
Есть ли способ узнать у операционной системы, когда она закончила эти причудливые эффекты, или узнать, сколько времени ей дали на выполнение операции?
Решение
Самое близкое, что я могу найти, это SPI_GETUIEFFECTS, который сообщает вам, включены ли такие эффекты вообще. Р>
Если включено, вы можете, конечно, использовать SPI_SETUIEFFECTS, чтобы отключить их. Но это скорее метод дробовика - как бы вы их восстановили? Вероятно, лучше временно отключить те, которые вас больше всего беспокоят.
Другие советы
Хотя я не знаю, как сделать то, что вы просите, у меня есть предложение: вместо того, чтобы свернуть окно вашего приложения, почему бы не скрыть его (с ShowWindow (SW_HIDE))? Это не будет зависеть от эффектов анимации, поэтому должно быть практически мгновенным.
Может быть, вместо минимизации вы должны вывести рабочий стол на передний план?