Qt学习笔记-各种对话框基本使用
生活随笔
收集整理的這篇文章主要介紹了
Qt学习笔记-各种对话框基本使用
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
運行圖如下:
文件結(jié)構(gòu)如下:
代碼如下:
mainwindow.h
#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QAction> #include <QMenuBar> #include <QFontDialog> #include <QMenu> #include <QCoreApplication> #include <QList> #include <QColor> #include <QDebug> #include <QColorDialog> #include <QFileDialog> #include <QProgressDialog> #include <QInputDialog> #include <QMessageBox> #include <QProgressDialog> #include <QWizard> class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = 0); ~MainWindow(); public slots: void colorTriggered(); void fileTriggered(); void fontTriggered(); void inputTriggered(); void msgTriggered(); void progressTriggered(); void errMsgTriggered(); void wizardTriggered(); private: QMenuBar *m_menubar; QMenu *m_dialogMenu; QAction m_color; QAction m_file; QAction m_font; QAction m_input; QAction m_msg; QAction m_progress; QAction m_errMsg; QAction m_wizard; }; #endif // MAINWINDOW_Hmainwindow.cpp
#include "mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { m_menubar=this->menuBar(); m_dialogMenu=new QMenu(tr("對話框")); m_color.setText(tr("顏色對話框")); m_file.setText(tr("文件對話框")); m_font.setText(tr("字體對話框")); m_input.setText(tr("輸入對話框")); m_msg.setText(tr("消息對話框")); m_progress.setText(tr("進度對話框")); m_errMsg.setText(tr("錯誤信息對話框")); m_wizard.setText(tr("向?qū)υ捒?#34;)); m_dialogMenu->addAction(&m_color); m_dialogMenu->addAction(&m_file); m_dialogMenu->addAction(&m_font); m_dialogMenu->addAction(&m_input); m_dialogMenu->addAction(&m_msg); m_dialogMenu->addAction(&m_progress); m_dialogMenu->addAction(&m_errMsg); m_dialogMenu->addAction(&m_wizard); m_menubar->addMenu(m_dialogMenu); connect(&m_color,SIGNAL(triggered(bool)),this,SLOT(colorTriggered())); connect(&m_file,SIGNAL(triggered(bool)),this,SLOT(fileTriggered())); connect(&m_font,SIGNAL(triggered(bool)),this,SLOT(fontTriggered())); connect(&m_input,SIGNAL(triggered(bool)),this,SLOT(inputTriggered())); connect(&m_msg,SIGNAL(triggered(bool)),this,SLOT(msgTriggered())); connect(&m_progress,SIGNAL(triggered(bool)),this,SLOT(progressTriggered())); connect(&m_errMsg,SIGNAL(triggered(bool)),this,SLOT(errMsgTriggered())); connect(&m_wizard,SIGNAL(triggered(bool)),this,SLOT(wizardTriggered())); } void MainWindow::colorTriggered(){ QColor color=QColorDialog::getColor(Qt::red,this,tr("顏色對話框")); qDebug()<<"color:"<<color; } void MainWindow::fileTriggered(){ QString fileName=QFileDialog::getOpenFileName(this,tr("文件對話框"),"D:",tr("圖片文件(*png *jpg)")); qDebug()<<"fileName:"<<fileName; } void MainWindow::fontTriggered(){ bool ok; QFont font=QFontDialog::getFont(&ok,this); qDebug()<<font; } void MainWindow::inputTriggered(){ bool ok; QString text=QInputDialog::getText(this,tr("輸入對話框"),tr("輸入內(nèi)容"),QLineEdit::Normal,tr("輸入的內(nèi)容"),&ok); qDebug()<<text; } void MainWindow::msgTriggered(){ QMessageBox::information(this,tr("消息對話框"),tr("消息提示")); } void MainWindow::progressTriggered(){ QProgressDialog pd(tr("進度"),tr("取消"),0,50000,this); pd.setWindowTitle("進度對話框"); pd.setWindowModality(Qt::WindowModal); pd.show(); for(int i=0;i<50000;i++){ pd.setValue(i); QCoreApplication::processEvents(); if(pd.wasCanceled())break; } } void MainWindow::errMsgTriggered(){ QMessageBox::critical(this,tr("錯誤信息對話框"),tr("錯誤信息提示")); } void MainWindow::wizardTriggered(){ QWizard wizard; wizard.setWindowTitle(tr("向?qū)υ捒?#34;)); wizard.exec(); } MainWindow::~MainWindow() { }main.cpp
#include "mainwindow.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); return a.exec(); }總結(jié)
以上是生活随笔為你收集整理的Qt学习笔记-各种对话框基本使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt文档阅读笔记-Q_CLASSINFO
- 下一篇: Qt工作笔记-自定义模型【继承QAbst