Você está aqui: Qt ::: Classes, Controles e Componentes ::: QMessageBox |
Exibindo mensagens informativas usando o método information() da classe QMessageBoxQuantidade de visualizações: 6457 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, StandardButtons buttons = Ok, StandardButton defaultButton = NoButton) 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?",
QMessageBox::Yes | QMessageBox::No | QMessageBox::Cancel,
QMessageBox::Yes);
}
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");
}
else if(res == QMessageBox::No){
QMessageBox::information(this, "Aviso", "Você clicou o botão No");
}
else if(res == QMessageBox::Cancel){
QMessageBox::information(this, "Aviso", "Você clicou o botão Cancel");
}
else{
QMessageBox::information(this, "Aviso", "Você não clicou nenhum botão");
}
}
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. |
|
|
Veja mais Dicas e truques de Qt |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




