Como faço para detectar efeitos de transição de parede?
-
06-07-2019 - |
Pergunta
Eu quero minimizar a minha candidatura, ter uma imagem da área de trabalho atual e retornar minhas costas aplicação ao seu estado original.
Esta multa tem vindo a trabalhar no Windows XP, no entanto, sob a testar em diferentes máquinas com Vista a minimizar o tempo de 200 milésimos de segundo não é mais válido.
Existe uma maneira de pedir ao sistema operacional quando ele tiver terminado estes efeitos de fantasia ou pesquisar quanto tempo foi dado para executar a operação?
Solução
O mais próximo que posso encontrar é SPI_GETUIEFFECTS, que informa se tais efeitos são ativados em tudo.
Se ativado, você poderia naturalmente uso SPI_SETUIEFFECTS para desligá-los. Mas isso é um método bastante espingarda - como é que você restaurá-los? É provavelmente melhor para desativar temporariamente os que mais lhe incomodam.
Outras dicas
Enquanto eu não sei de uma maneira de fazer o que você pedir, eu tenho uma sugestão: em vez de minimizar a janela do aplicativo, porque não escondê-lo (com ShowWindow (SW_HIDE))? Isso não será sujeita aos efeitos de animação, por isso deve ser praticamente instantânea.
Talvez em vez minimizando você deve trazer desktop para frente?