Gestão de Janelas
Observação
Este guia de design foi criado para o Windows 7 e não foi atualizado para versões mais recentes do Windows. Grande parte das orientações ainda se aplica em princípio, mas a apresentação e os exemplos não refletem as nossas orientações de conceção atuais .
Este artigo aborda o posicionamento padrão das janelas quando exibidas inicialmente na tela, sua ordem de empilhamento em relação a outras janelas (ordem Z), seu tamanho inicial e como sua exibição afeta o foco de entrada.
Para as seguintes diretrizes:
- Uma janela de nível superior não tem janela de proprietário e é exibida na barra de tarefas. Exemplos: janelas de aplicativos. No Windows Vista e versões posteriores, as caixas de diálogo sem janelas de proprietário e folhas de propriedades também são consideradas de nível superior.
- Uma janela de propriedade tem uma janela de proprietário e não é exibida na barra de tarefas. Exemplos: caixas de diálogo modais, caixas de diálogo sem moderação.
- Uma janela iniciada pelo usuário é exibida como resultado direto da ação de um usuário. Caso contrário, é programa iniciado se iniciado por um programa, ou sistema iniciado se iniciado pelo Microsoft Windows . Por exemplo, uma caixa de diálogo Opções é iniciada pelo usuário, mas um lembrete de reunião é iniciado pelo programa.
- Uma janela contextual é uma janela iniciada pelo usuário que tem uma forte relação com o objeto a partir do qual foi iniciada. Por exemplo, as janelas exibidas pelos menus de contexto ou ícones da área de notificação são contextuais, mas as janelas exibidas pelas barras de menus não.
- O monitor ativo é o monitor onde o programa ativo está sendo executado.
- O monitor padrão é aquele com o menu Iniciar, barra de tarefas e área de notificação.
Conceitos de design
A gestão de janelas é uma das atividades mais fundamentais do utilizador. Antes do Windows Vista, as janelas recebiam tamanhos padrão pequenos e eram colocadas no meio da tela. Essa abordagem funciona bem para monitores únicos e de baixa resolução mais antigos, mas não para hardware de vídeo moderno.
O Windows foi concebido para suportar hardware de vídeo moderno, que muitas vezes é executado em resoluções significativamente superiores à resolução de ecrã mínima suportada e pode ter vários monitores. Ao fazê-lo:
- Permite que os usuários se beneficiem totalmente de seu hardware avançado.
- Requer menos esforço dos utilizadores para mover o rato através de distâncias maiores.
- Torna o posicionamento da janela mais previsível e, portanto, mais fácil de encontrar.
A resolução de ecrã mínima suportada
A resolução de tela mínima efetiva suportada pelo Windows é de 800x600 pixels. Isso significa que as janelas de tamanho fixo devem ser exibidas totalmente na resolução mínima (reservando espaço para a barra de tarefas), mas as janelas redimensionáveis podem ser otimizadas para uma resolução efetiva de 1024x768 pixels, desde que sejam funcionais na resolução mínima.
Embora atualmente as resoluções de tela física mais comuns para PCs Windows sejam de 1024x768 pixels ou superiores, a segmentação de 800x600 pixels permite que o Windows:
- Trabalhe bem com todo o hardware moderno, incluindo pequenos computadores portáteis.
- Suporta configurações de dpi alto (pontos por polegada).
- Suporta fontes maiores para acessibilidade.
- Suporte a hardware usado em uma base global.
A escolha da resolução mínima a apoiar exige encontrar o equilíbrio certo. Visar uma resolução mais alta resultaria em uma experiência subótima para uma porcentagem significativa de hardware moderno, enquanto direcionar uma resolução mais baixa impediria os designers de aproveitar ao máximo o espaço de tela disponível.
Se você acredita que seus usuários-alvo estão usando resoluções significativamente mais altas do que o mínimo do Windows, você pode projetar seu programa para aproveitar ao máximo o espaço extra na tela usando janelas redimensionáveis que são bem dimensionadas.
Orientações
Geral
- Suporta a resolução mínima efetiva do Windows de 800x600 pixels. Para interfaces de usuário (UIs) críticas que devem funcionar no modo de segurança, ofereça suporte a uma resolução efetiva de 640x480 pixels. Certifique-se de considerar o espaço usado pela barra de tarefas reservando 48 pixels verticais relativos para janelas exibidas com a barra de tarefas.
- Otimize layouts de janelas redimensionáveis para uma resolução efetiva de 1024x768 pixels. Redimensione automaticamente essas janelas para resoluções de tela mais baixas de uma forma que ainda seja funcional.
- Certifique-se de testar suas janelas em 96 dpi (100%) em 800x600 pixels, 120 dpi (125%) em 1024x768 pixels e 144 dpi (150%) em 1200x900 pixels. Verifique se há problemas de layout, como recorte de controles, texto e janelas e alongamento de ícones e bitmaps.
- Para programas com cenários de uso por toque e dispositivos móveis, otimize para 120 dpi. Telas de alto dpi são atualmente predominantes em PCs móveis e de toque.
-
As janelas redimensionáveis não precisam mais mostrar o glifo redimensionado no canto inferior direito, porque:
- Todos os lados e bordas de uma janela são redimensionáveis, não apenas o canto inferior direito.
- O glifo requer uma barra de status para ser exibido, mas muitas janelas redimensionáveis não fornecem barras de status.
- As bordas de janela redimensionáveis e os ponteiros de redimensionamento são mais eficazes na comunicação de que uma janela é redimensionável do que o glifo de redimensionamento.
Controles da barra de título
Use os controles da barra de título da seguinte maneira:
- Fechar. Todas as janelas primárias e secundárias com uma moldura de janela padrão devem ter um botão Fechar na barra de título. Clicar em Fechar tem o efeito de cancelar ou fechar a janela.
Neste exemplo, a caixa de diálogo não tem um botão Fechar na barra de título.
- Minimizar. Todas as janelas primárias e as janelas secundárias sem modo de longa duração (como caixas de diálogo de progresso) devem ter um botão Minimizar. Clicar em Minimizar reduz a janela ao botão da barra de tarefas. Consequentemente, as janelas que podem ser minimizadas requerem um ícone da barra de título.
- Maximizar/Restaurar. Todas as janelas redimensionáveis devem ter um botão Maximizar/Restaurar para baixo. Clicar em Maximizar exibe a janela em seu tamanho maior, que para a maioria das janelas é tela cheia; enquanto clicar em Restaurar para baixo exibe a janela em seu tamanho anterior. No entanto, algumas janelas não se beneficiam do uso de uma tela cheia, então essas janelas devem maximizar para seu maior tamanho útil.
Tamanho da janela
- Escolha um tamanho de janela padrão apropriado para seu conteúdo. Não tenha medo de usar tamanhos de janela iniciais maiores se puder usar o espaço de forma eficaz.
- Use janelas redimensionáveis sempre que possível para evitar barras de rolagem e dados truncados. As janelas com conteúdo dinâmico e listas são as que mais beneficiam de janelas redimensionáveis.
- Para documentos de texto, considere um comprimento máximo de linha de 65 caracteres para facilitar a leitura do texto. (Os caracteres incluem letras, pontuação e espaços.)
- Janelas de tamanho fixo:
- Deve ser totalmente visível e dimensionado para caber dentro da área de trabalho.
- Janelas redimensionáveis:
- Pode ser otimizado para resoluções mais altas, mas reduzido conforme necessário no momento da exibição para a resolução de tela real.
- Para tamanhos de janela progressivamente maiores, deve mostrar progressivamente mais informações. Certifique-se de que pelo menos uma parte da janela ou controle tenha conteúdo redimensionável.
- Deve evitar tamanhos restaurados padrão que são maximizados ou quase maximizados. Em vez disso, escolha um tamanho padrão que normalmente seja o mais útil sem ser tela cheia. Suponha que os usuários maximizarão a janela em vez de redimensioná-la para torná-la em tela cheia.
- Deve definir um tamanho mínimo de janela se houver um tamanho abaixo do qual o conteúdo não é mais utilizável. Para controles redimensionáveis, defina tamanhos mínimos de elementos redimensionáveis para seus menores tamanhos funcionais, como larguras mínimas de colunas funcionais em exibições de lista.
- Deve alterar a apresentação se isso tornar o conteúdo utilizável em tamanhos menores.
Neste exemplo, o Windows Media Player altera seu formato quando a janela se torna muito pequena para o formato padrão.
Localização da janela
Para as diretrizes a seguir, "centralização" significa enviesar o posicionamento vertical ligeiramente para a parte superior do monitor, em vez de colocar exatamente no meio. Coloque 45% do espaço entre a parte superior do monitor/proprietário e a parte superior da janela, e 55% entre a parte inferior do monitor/proprietário e a parte inferior da janela. Faça isso porque o olho está naturalmente enviesado para a parte superior da tela.
"Centralização" significa enviesar ligeiramente a posição vertical para a parte superior do monitor.
Se uma janela for contextual, exiba-a sempre perto do objeto a partir do qual foi iniciada. Coloque-o fora do caminho para que o objeto de origem não seja coberto pela janela.
- Se exibido usando o mouse, quando possível coloque-o deslocado para baixo e para a direita.
Mostrar janelas contextuais perto do objeto a partir do qual foi iniciado.
Os ícones da área de notificação do Windows iniciados são exibidos perto da área de notificação.
Se for apresentado com uma caneta, coloque-a, sempre que possível, de modo a não ficar coberta pela mão do utilizador. Para usuários destros, exibir à esquerda; caso contrário, exiba à direita.
Ao usar uma caneta, mostre também janelas contextuais para que elas não sejam cobertas pela mão do usuário.
Desenvolvedores: Você pode distinguir entre eventos de mouse e eventos de caneta usando o GetMessageExtraInfo API. Você pode determinar a do usuário de handedness usando a API SystemParametersInfo do com SPI_GETMENUDROPALIGNMENT.
Coloque as caixas de diálogo de progresso fora do caminho no canto inferior direito do monitor ativo.
Coloque as caixas de diálogo de progresso no canto inferior direito.
Se uma janela não estiver relacionada ao contexto atual ou à ação do usuário, coloque-a longe do local atual do ponteiro. Isso evita interações acidentais.
Se uma janela for um aplicativo ou documento de nível superior, sempre coloque sua origem em cascata no canto superior esquerdo do monitor. Se criado pelo programa ativo, use o monitor ativo; caso contrário, use o monitor padrão.
Cascata janelas de aplicativos ou documentos de nível superior no canto superior esquerdo do monitor.
Se uma janela for um utilitário de nível superior, exiba-a sempre "centralizada" no monitor. Se criado pelo programa ativo, use o monitor ativo; caso contrário, use o monitor padrão.
Centralizar janelas de utilitários de nível superior.
Se uma janela for de propriedade, exiba-a inicialmente "centralizada" na parte superior da janela do proprietário. Para exibição subsequente, considere exibi-lo em seu último local (relativo à janela do proprietário) se isso for provavelmente mais conveniente.
Inicialmente centralizar janelas de propriedade em cima da janela do proprietário.
Para caixas de diálogo sem moderação, sempre seja exibido inicialmente na parte superior da janela do proprietário para facilitar a localização. No entanto, se o usuário ativar a janela do proprietário, isso pode obscurecer a caixa de diálogo sem moderação.
Exiba caixas de diálogo sem moderação inicialmente na parte superior da janela do proprietário para torná-las fáceis de encontrar.
Se necessário, ajuste a localização inicial para que toda a janela fique visível dentro do monitor de destino. Se uma janela redimensionável for maior do que o monitor de destino, reduza-a para ajustar.
Ordem da janela (ordem Z)
- Coloque sempre as janelas próprias em cima da janela do proprietário. Nunca coloque janelas próprias sob as janelas do proprietário, porque provavelmente os usuários não as verão.
- Respeite a seleção de ordem Z dos usuários. Quando os usuários selecionarem uma janela, traga apenas as janelas associadas a essa instância do programa (a janela mais qualquer proprietário ou janela própria) para o topo da ordem Z. Não altere a ordem de nenhuma outra janela, como instâncias independentes do mesmo programa.
Ativação da janela
- Respeite a seleção do estado da janela dos usuários. Se uma janela existente precisar de atenção, pisque o botão da barra de tarefas três vezes para chamar a atenção e deixá-la realçada, mas não faça mais nada. Não restaure nem ative a janela. Não use efeitos sonoros. Em vez disso, permita que os usuários ativem a janela quando estiverem prontos.
- Exceção: Se a janela não aparecer na barra de tarefas, leve-a para o topo de todas as outras janelas e pisce a barra de título.
- Restaurar uma janela primária também deve restaurar todas as suas janelas secundárias, mesmo que essas janelas secundárias tenham seu próprio botão da barra de tarefas. Ao restaurar, coloque as janelas secundárias na parte superior da janela primária.
Foco de entrada
-
Windows exibidas por ações iniciadas pelo usuário devem ter foco de entrada, mas somente se a janela for renderizada imediatamente (dentro de 5 segundos). Uma vez que a janela é renderizada, ela pode ter foco de entrada uma vez.
- Se uma janela renderizar lentamente (mais de 5 segundos), é provável que os usuários executem outra tarefa enquanto esperam. Focar neste momento seria um aborrecimento, especialmente se feito mais de uma vez.
- As janelas que não são imediatamente exibidas ou exibidas por uma ação iniciada pelo sistema não devem ter foco de entrada. Em vez disso, exiba na parte superior sem foco e permita que os usuários os ativem quando estiverem prontos.
- Exceção: Credential Manager.
Persistência
- Quando uma janela for reexibida, considere exibi-la no mesmo estado em que foi acessada pela última vez. Ao fechar, salve o monitor usado, o tamanho da janela, o local e o estado (maximizado versus restaurador). Ao reexibir, restaure o tamanho, o local e o estado da janela salva usando o monitor apropriado. Além disso, considere fazer com que esses atributos persistam nas instâncias do programa por usuário.
Exceções:
- Não salve ou faça com que esses atributos persistam para o Windows quando seu uso é tal que os usuários são muito mais propensos a querer começar completamente de novo.
- Para programas que provavelmente serão usados em computadores com Windows Tablet e Touch Technology, salve dois estados do Windows para os modos paisagem e retrato. Para obter mais informações, consulte Designing for Varying Display Sizes.
-
Se a configuração atual do monitor impedir a exibição de uma janela usando seu último estado:
- Tente exibir a janela usando seu último monitor.
- Se a janela for maior do que o monitor, redimensione-a conforme necessário.
- Mova o local para o canto superior esquerdo para caber dentro do monitor, conforme necessário.
- Se as etapas acima não resolverem o problema, reverta para as diretrizes de posicionamento de janela padrão. Considere restaurar o tamanho anterior, se possível.