Por que levei dois dias para fazer este meme

Criando Caixas de Diálogo Modernas do Windows Personalizadas

Em um momento de trabalho, surgiu um erro inesperado no editor de vídeo, que, embora fosse uma brincadeira (um meme), revelou uma necessidade: a falta de uma maneira fácil de criar caixas de diálogo de erro do Windows com um visual moderno e personalizado.

Para resolver isso, foi desenvolvido um programa que permite justamente essa customização. Esta ferramenta é gratuita, e a seguir, vamos explorar como ela funciona e seus recursos.

Até então, existiam aplicativos para criar caixas de diálogo de erro falsas no estilo antigo do Windows. O que faltava era uma solução para gerar versões mais modernas, como a que será apresentada, que incorpora elementos de design atualizados.

O resultado desse desenvolvimento possui recursos interessantes que serão detalhados. Vamos analisar a aplicação diretamente no computador para entender seu funcionamento.

Acessando e Baixando a Aplicação

O aplicativo em questão é um programa básico de Windows Forms, distribuído como um único arquivo executável (.exe). Ele pode ser obtido a partir de uma página no GitHub.

Para fazer o download, o procedimento é o seguinte:

  • Acesse a seção de Releases (Lançamentos) no lado direito da página do projeto.
  • Procure por Assets (Ativos) na versão mais recente.
  • Geralmente, a versão recomendada para uso geral é a self-contained x86, que permite a execução de qualquer lugar.

Utilizando a Ferramenta de Criação de Diálogos

Ao abrir o aplicativo, você encontrará campos pré-preenchidos, úteis para ter uma noção de como ele funciona. É possível inserir:

  • O Título da janela.
  • O Cabeçalho principal da mensagem.
  • Outros textos de suporte.

Após configurar o conteúdo, basta clicar em Show dialogue (Mostrar diálogo) para que a caixa de mensagem personalizada apareça com as informações inseridas.

Opções de Ícones e Barras Coloridas

A ferramenta oferece diversas opções de ícones padrão para a caixa de diálogo, como os de informação, aviso (warning) e, presumivelmente, outros como erro ou sucesso.

Um diferencial notável é que, ao usar o modo de informação expandida, um elemento de expansão (expander) é exibido, juntamente com outros recursos não disponíveis nas caixas de diálogo padrão do Windows. O cabeçalho, por exemplo, pode ter uma cor diferente.

As caixas de diálogo modernas, tecnicamente conhecidas como Task Dialogue, possuem modos embutidos que exibem barras coloridas específicas:

  • Barra azul (com escudo, indicando elevação de privilégios).
  • Barra cinza.
  • Barra vermelha (para erro, associada ao escudo de erro).
  • Barra amarela (para aviso).
  • Barra verde (para sucesso).

Embora existam associações padrão (como erro com barra vermelha), é possível realizar um “truque” para combinar qualquer ícone com qualquer cor de barra. Isso é feito selecionando a cor de barra desejada e, em seguida, escolhendo o ícone, independentemente da associação padrão.

O funcionamento por trás disso envolve desenhar inicialmente a caixa com a combinação padrão (por exemplo, escudo verde com barra verde de sucesso) e, subsequentemente, substituir o ícone pelo que foi selecionado pelo usuário.

Usando Ícones Personalizados

Além dos ícones embutidos, é possível usar arquivos de ícones personalizados. O aplicativo permite:

  1. Selecionar Ícone de um Executável (.exe): Navegue até o diretório de um programa (como o Premiere Pro) e selecione a opção “Icon from .exe”. O sistema extrairá os ícones disponíveis nesse arquivo executável.
  2. Usar Arquivos de Imagem Customizados: O suporte abrange diversos formatos de imagem, incluindo Bitmap, GIF, JPEG, PNG, TIFF, ou arquivos de ícone (.ico). Há também filtros para buscar apenas arquivos .exe ou .ico.

Importante: Devido às limitações da API do Windows, não é possível utilizar um arquivo de ícone customizado (como um PNG carregado) em conjunto com as barras coloridas embutidas. Entretanto, é possível usar os ícones do sistema (aqueles disponíveis no arquivo imageres.dll) com as barras coloridas.

Explorando Ícones do Sistema (imageres.dll)

Para facilitar a seleção dos ícones que funcionam com as barras coloridas, foi incluído um botão que visualiza as opções disponíveis no arquivo imageres.dll da instalação do Windows. Este recurso é dinâmico, puxando as opções diretamente do sistema, sem codificação fixa.

Ao clicar neste botão, é possível selecionar um ícone da lista e preencher o campo “Custom Icon ID” automaticamente. Por exemplo, se selecionar o ícone de vídeo, a caixa de diálogo aparecerá com ele, utilizando a cor de barra padrão (sem barra, se não especificada).

Ao selecionar um ícone do sistema e optar por uma cor de barra customizada (como a barra verde), a combinação será exibida, algo que normalmente não seria permitido nativamente com essa caixa de diálogo.

É possível digitar o ID do ícone manualmente, mas a seleção visual é mais prática. Também se pode experimentar com qualquer um dos ícones do sistema e combiná-los com as barras coloridas.

Configurando Botões e Campos Adicionais

A ferramenta permite definir quais botões serão exibidos na caixa de diálogo, como as opções padrão “Yes” (Sim) e “No” (Não).

A aparência da caixa é ajustável pela omissão de certos campos:

  • Se o campo “Expanded Information” (Informação Expandida) for removido, o recurso de expansão simplesmente não aparecerá, garantindo que a caixa não fique com um aspecto estranho.
  • Da mesma forma, remover a “Footer message” (Mensagem de Rodapé) fará com que a caixa se assemelhe mais a uma mensagem tradicional.

É importante notar que os botões exibidos (como Sim/Não) não têm funcionalidade real; eles apenas aparecem na janela simulada.

Ajustes Finais de Layout

Algumas observações sobre o layout:

  • Título Ausente: Se você não fornecer um título, o nome do arquivo executável (.exe) será exibido no lugar. Para deixar o campo do título em branco, insira um espaço.
  • Cabeçalho Ausente: Se não houver um cabeçalho, o texto principal será exibido em texto preto simples.
  • Selo de Verificação (Verification Badge): Ao preencher este campo com qualquer texto (ex: “Don’t show this again” ou “I understand”), um pequeno selo de verificação aparecerá na caixa de diálogo.

Controle da Cor da Barra

A opção “Force None” (Forçar Nenhum) na configuração da cor da barra é raramente necessária. Ela serve para anular as configurações de cor que vêm intrinsecamente ligadas à seleção de certos ícones no sistema (por exemplo, o ícone de erro vem com a barra vermelha). Forçar “None” remove qualquer fundo colorido, se desejado. Alternativamente, pode-se simplesmente selecionar o ícone desejado da lista do sistema, que já terá sua cor de barra associada, sem precisar forçar a ausência da barra.

Em resumo, esta ferramenta gera caixas de diálogo de erro customizadas que podem ser utilizadas para demonstrações, criação de memes ou gráficos, aproveitando ao máximo os recursos visuais do moderno Task Dialogue do Windows.

Perguntas Frequentes

  • O que é uma “Task Dialogue”?
    É o nome técnico dado às caixas de diálogo de mensagem mais modernas do Windows, que suportam recursos visuais como barras coloridas e elementos de expansão de informação.
  • É possível usar qualquer ícone com qualquer barra colorida?
    Sim, é possível combinar ícones do sistema com qualquer cor de barra através da configuração manual. Contudo, ícones carregados a partir de arquivos externos (como PNGs) não podem ser usados com as barras coloridas embutidas devido a restrições da API do Windows.
  • Como posso usar um ícone específico de outro programa?
    Você pode selecionar a opção “Icon from .exe” e apontar para o arquivo executável desejado para extrair um de seus ícones.
  • O que acontece se eu não definir um título para a caixa de diálogo?
    Se o campo Título for deixado vazio, a aplicação exibirá o nome do arquivo executável da ferramenta como título da janela.
  • Os botões de resposta (Sim/Não) funcionam?
    Não, os botões exibidos são apenas visuais para simular a caixa de diálogo; eles não executam nenhuma ação real no sistema.