Pergunta

Estou usando a classe MessageBox para mostrar erros para os usuários e, embora esse possa não ser o comportamento certo, é muito conveniente. Este é um aplicativo de tela sensível ao toque, no entanto, então eu preciso que o botão 'OK' seja muito maior do que é (amaldiçoe meus dedos excessivamente grandes!).

Eu acho que se eu aumentar o tamanho da fonte na caixa de diálogo, eu deveria estar bem. Existe uma maneira de fazer isso? Ou realmente, existe alguma maneira de aumentar o tamanho da caixa de diálogo?

Obrigado

Foi útil?

Solução

Até onde eu sei, você não pode, pois as caixas de diálogo "normais" estão usando as configurações de fonte do sistema padrão.

Roll Yours Own é provavelmente o melhor caminho a seguir. É bastante trivial de fazer, e muito divertido! E você pode construir coisas que a caixa de diálogo padrão não suporta (sem magia da Pinvoke), como centralizar no meio da tela etc.

Outras dicas

Use um formulário com uma caixa de texto e dois botões OK, cancele nele. Use este formulário em vez de uma caixa de mensagem em todo o projeto. Você pode alterar a fonte, o backcolor, a multilina etc. da caixa de texto em tempo real. Você também pode alterar o tamanho, a cor e a fonte dos botões.

Eu criaria minha própria classe MessageBox para esse fim - BigMessageBox, talvez?. Seria então uma questão de substituir o MessageBox.Show pelo bigMessageBox.show.

Outra alternativa é usar ganchos do Windows para modificar o formulário - dê uma olhada https://web.archive.org/web/20091208060754/http://msdn.microsoft.com/en-gb/magazine/cc188920.aspx Para um exemplo do .NET 1.0. Isso pode ser mais fácil na versão atual, mas não consigo encontrar um exemplo para você.

Existe uma solução - através da instalação do gancho CBT, é possível ajustar a ampla variedade de configurações visuais da caixa de mensagens: fontes de mensagem e botões, fundo de diálogo, posicionamento de diálogo, ícones, legendas de botão, tempo limite e assim por diante.

MessageBox.http://www.news2news.com/vfp/?solution=5

Por favor, verifique meu grátis para usar FLEXIblemessageBox que pode ser usado em vez de MessageBox e possui uma propriedade de fonte (estática).

Atenciosamente, Jörg

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top