QT入门笔记--创建对话框

水深无声 2021-12-24 02:33 365阅读 0赞

创建对话框的基本步骤:

*创建并初始化子窗口部件

*把子窗口部件放到布局中

*设置Tab键顺序(本文省略了此步骤)

*建立信号-槽之间的连接

*实现对话框中的自定义槽

本文所创建的对话框如下:

Center

MyDialog.h

**#ifndef MYDIALOG_H
#define MYDIALOG_H
#include
#include
#include
#include
#include
#include
#include
class QCheckBox;
class QLabel;
class QTextEdit;
class QPushButton;

class MyDialog:public QDialog
{
Q_OBJECT
public:
MyDialog(QWidget *parent = 0);
signals:
void submit();
private slots:
void result();
private:
QLabel *lbl;
QTextEdit *txt_name;
QRadioButton *rbtn_male;
QRadioButton *rbtn_female;
QPushButton *btn_submit;

};

#endif // MYDIALOG_H

MyDialog.cpp

#include”MyDialog.h”

MyDialog::MyDialog(QWidget *parent):QDialog(parent)
{
lbl = new QLabel(tr(“Input your name:”));
txt_name = new QTextEdit;
rbtn_male = new QRadioButton(“male”);
rbtn_female = new QRadioButton(“female”);
btn_submit = new QPushButton(“&Submit”);
QHBoxLayout *top =new QHBoxLayout;
QHBoxLayout *middle =new QHBoxLayout;
QHBoxLayout *bottom =new QHBoxLayout;
top->addWidget(lbl);
top->addWidget(txt_name);
middle->addWidget(rbtn_male);
middle->addWidget(rbtn_female);
bottom->addWidget(btn_submit);
QVBoxLayout *frm=new QVBoxLayout;
frm->addLayout(top);
frm->addLayout(middle);
frm->addLayout(bottom);
setLayout(frm);

connect(btn_submit,SIGNAL(clicked()),this,SLOT(result()));

}

void MyDialog::result()
{
emit submit();

if(rbtn_male->isChecked())
{

txt_name->append(“you are:male”);
}
else
{

txt_name->append(“you are:female”);
}
}

main.cpp

#include”MyDialog.h”
#include

int main(int argc, char *argv[])
{
QApplication myapp(argc, argv);
MyDialog *md = new MyDialog;
md->show();

return myapp.exec();
}**

发表评论

表情:
评论列表 (有 0 条评论,365人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Qt 标准对话框

    1.对话框种类 为应用程序设计提供了一些常用的标准对话框,如打开文件对话框、选择颜色对话框、信息提示和确认选择对话框、标准输入对话框等,用户无需再自己设计这些常用的对话框

    相关 QT入门笔记--创建对话框

    创建对话框的基本步骤: *创建并初始化子窗口部件 *把子窗口部件放到布局中 *设置Tab键顺序(本文省略了此步骤) *建立信号-槽之间的连接 *实现对话框