Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: Qt ::: Classes, Controles e Componentes ::: QMessageBox

Exibindo mensagens informativas usando o método information() da classe QMessageBox

Quantidade de visualizações: 6158 vezes
O método information() da classe QMessageBox é usado quando queremos exibir mensagens informativas aos usuários de nossos programas. Veja sua assinatura:

StandardButton QMessageBox::information(QWidget *parent, 
  const QString& title, const QString& text, 
......


Vamos analisar os parâmetros deste método separadamente:

parent - Representa a janela pai da janela de mensagem. Em geral fornecemos o valor this a este parâmetro.

title - Representa o texto na barra de títulos da mensagem.

text - Representa o texto a ser exibido na mensagem.

buttons - Representa os botões que serão exibidos na mensagem. O padrão é o botão OK. Os botões podem ser aqueles constantes na flag StandardButtons, tais como MessageBox::Ok, QMessageBox::Open, QMessageBox::Save, QMessageBox::Cancel, etc, combinados com o operador "|".

defaultButton - Representa o botão que será acionado quando pressionarmos a tecla Enter. Este botão deverá ser parte dos botões definidos no parâmetro buttons. O padrão é NoButton.

Veja agora um trecho de código no qual temos uma mensagem contendo um título, um texto informativo e três botões (Yes, No e Cancel):

void JanelaPrincipal::on_pushButton_clicked()
{
  QMessageBox::information(this, "Salvar",
    "O documento foi modificado. Deseja salvá-lo antes de sair?",
......


Em situações em que temos mais de um botão em uma mensagem gerada por meio do método information(), é importante saber qual botão o usuário escolheu (clicou). Para isso podemos usar o retorno do método, que é um valor inteiro referente à posição do botão na enumeração QMessageBox::StandardButton. Veja:

void JanelaPrincipal::on_pushButton_clicked()
{
   int res = QMessageBox::information(this, "Salvar",
     "O documento foi modificado. Deseja salvá-lo antes de sair?",
     QMessageBox::Yes | QMessageBox::No | QMessageBox::Cancel,
     QMessageBox::Yes);

   if(res == QMessageBox::Yes){
	   QMessageBox::information(this, "Aviso", "Você clicou o botão Yes");
......


Note que se fecharmos esta mensagem usando a tecla Esc ou usando o botão Fechar do diálogo, o retorno é o botão Cancel.

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de Qt

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 23 usuários muito felizes estudando em nosso site.