Eu uso o UltraMon (acredito que seja Open Source) e, em certas circunstâncias, ele pode fazer isso, se configurado corretamente.
Primeiro, obtenha o programa UltraMon instalado. Então, quando estiver em execução, digamos que agora você só tem um monitor conectado (não importa o número), crie um perfil:
- Clique com o botão direito no ícone na bandeja do sistema
- Clique com o botão esquerdo em Exibir perfis
- Clique com o botão esquerdo em Novo Perfil de Exibição, Nomeie-o (por exemplo, o que eu faço é fornecer um número refletindo quantos monitores você está usando, como o Perfil 1).
- Agora você tem um. Legal, você pode criar papel de parede para cada monitor, screensavers, etc Obter todos os seus ícones do jeito que você quiser.
- Clique com o botão direito no ícone do systray.
- Ícones de área de trabalho do botão esquerdo à esquerda salvam posições
Agora conecte / desconecte outras exibições. Crie um perfil para esta nova configuração. Talvez chamá-lo de "Perfil 7" por ter 7 monitores conectados. Agora salve as posições dos ícones quando eles estiverem do jeito que você quer.
Você pode facilmente usar essa ferramenta para alternar entre os perfis. Você pode facilmente colocar atalhos na área de trabalho para alternar rapidamente entre os perfis.
Por fim, nas opções avançadas, você pode dizer ao UltraMon para fazer isso o tempo todo, automaticamente, mas isso pode exigir uma versão paga (uma taxa vitalícia).
Eu comprei o UltraMon em 2009 por US $ 19,99 e valeu totalmente a pena.