您的位置:首页 > 编程语言 > Qt开发

QT学习笔记(四)各种对话框的创建

2018-01-26 16:33 162 查看
#ifndef MAINWINDOW_H

#define MAINWINDOW_H


#include <QMainWindow>


class MainWindow : public QMainWindow

{

Q_OBJECT


public:

MainWindow(QWidget *parent = 0);

~MainWindow();

};


#endif // MAINWINDOW_H

#include "mainwindow.h"
#include <QMenu>
#include <QMenuBar>
#include <QAction>
#include <QDialog>
#include <QDebug>
#include <QMessageBox>
#include <QFileDialog>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
QMenuBar *mbar = menuBar();
setMenuBar(mbar);
QMenu *menu = mbar->addMenu("对话框");
QAction *p1 = menu->addAction(" 模态对话框");
connect(p1,&QAction::triggered,
[=]()
{
QDialog dlg;
dlg.exec();
qDebug()<<"1111";
}
);
QAction *p2 = menu->addAction("关于对话框");
connect(p2,&QAction::triggered,
[=]()
{
QMessageBox::about(this,"about","关于QT");
}
);
QAction *p3 = menu->addAction("问题对话框");
connect(p3,&QAction::triggered,
[=]()
{
int ret = QMessageBox::question(this,"question","Are you OK?");
switch(ret)
    {
case QMessageBox::Yes:
qDebug() << "I am OK";
break;
case QMessageBox::No:
qDebug()<<"I am bad";
break;
default:
break;
    }
}
);
QAction *p4 = menu->addAction("文件对话框");
connect(p4,&QAction::triggered,
[=]()
{
QString path = QFileDialog::getOpenFileName(this,"open","../","souce(*.cpp *.h);;Text(*.text);;all(*.*)");
qDebug()<<path;
}
);
}
MainWindow::~MainWindow()
{
}
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: