Qt buttonBox按钮

新建buttonboxGUI Application项目。布局如图:

Qt buttonBox按钮_第1张图片

最上边: lineEdit            作为输入框

中间: buttonBox控件        确定和取消

最下边:textEdit              用来当按下“确定” 按钮时, 显示lineEdit输入的文字; 或按下“取消” 时清空textEdit控件中内容。

 实现:

    1.  头文件中mainWindow.h

       添加: #include <QAbstractButton>

                   #include <QPushButton>

   2.  右击buttonBox 选“ go to slots"  (即转到槽),自动完成槽函数的添加

         private slots;

                   void on_buttonbox_clicked(QAbstractButton *button);

  3. 在mainWindow.cpp中实现槽函数(上边的):

     void mainWindow::on_buttonbox_clicked(QAbstractButton *button)

     QString str;
    str = ui->textEdit->toPlainText(); //取得textEdit的输入内容
    if(ui->buttonBox->button(QDialogButtonBox::Ok)  == button)   //判断按下的是否为"确定”按钮
    {
        if(!ui->lineEdit->text().isEmpty())  //判断lineEdit是否为空,不为空返回0
        {
            str += ui->lineEdit->text()+"\n";  //str连接lineEdit中的内容
            ui->textEdit->setPlainText(str); //显示str内容
        }
    }
    else if(button == ui->buttonBox->button((QDialogButtonBox::Cancel)))
        ui->textEdit->setPlainText(" ");

}


4.运行结果

Qt buttonBox按钮_第2张图片

你可能感兴趣的:(Qt buttonBox按钮)