zoukankan      html  css  js  c++  java
  • QT 多页面切换之QTabWidget

    1.  //mydialog.h   
    2. #ifndef MYDIALOG_H   
    3. #define MYDIALOG_H   
    4. #include <QDialog>   
    5. class QTabWidget;  
    6. class MyDialog : public QDialog  
    7. {  
    8.   Q_OBJECT  
    9. public:  
    10.   explicit MyDialog(QWidget *parent = 0);  
    11. signals:  
    12. public slots:  
    13. private:  
    14.   QTabWidget *tabWidget;  
    15. };  
    16. #endif // MYDIALOG_H  


     

    1. //mydialog.cpp   
    2. #include "mydialog.h"   
    3. #include <QtGui/QTabWidget>   
    4. #include <QtGui/QHBoxLayout>   
    5. #include <QtGui/QVBoxLayout>   
    6. #include <QtGui/QLabel>   
    7. #include <QtGui/QLineEdit>   
    8. #include <QtGui/QPushButton>   
    9. #include <QtGui/QWidget>   
    10. #include <QtGui/QIcon>   
    11. MyDialog::MyDialog(QWidget *parent) :  
    12.   QDialog(parent)  
    13. {  
    14.   tabWidget = new QTabWidget();  
    15.   
    16.   //新建第一个页面的部件   
    17.   QWidget *widget = new QWidget();  
    18.   QLineEdit *lineEdit = new QLineEdit();  
    19.   QPushButton *pushButton = new QPushButton("Test");  
    20.   QVBoxLayout *vLayout = new QVBoxLayout();  
    21.   vLayout->addWidget(lineEdit);  
    22.   vLayout->addWidget(pushButton);  
    23.   widget->setLayout(vLayout);  
    24.   
    25.   
    26.   //新建第二个页面的部件   
    27.   QLabel *label = new QLabel("Hello Qt");  
    28.   
    29.   //新建第三个页面的部件   
    30.   QPushButton *pushButton3 = new QPushButton("Click Me");  
    31.   
    32.   //向QTabWidget中添加第一个页面   
    33.   QIcon icon1(":/new/icon/images/1.ico");  
    34.   tabWidget->addTab(widget, icon1, "Tab1");  
    35.   
    36.   //向QTabWidget中添加第二个页面   
    37.   QIcon icon2(":/new/icon/images/2.ico");  
    38.   tabWidget->addTab(label, icon2, "Tab2");  
    39.   
    40.   //向QTabWidget中添加第三个页面   
    41.   QIcon icon3(":/new/icon/images/3.ico");  
    42.   tabWidget->addTab(pushButton3, icon3, "Tab3");  
    43.   
    44.   QHBoxLayout *layout = new QHBoxLayout();  
    45.   layout->addWidget(tabWidget);  
    46.   
    47.   this->setLayout(layout);  
    48.   this->resize(300, 100);  
    49.   this->setWindowTitle("QTabWidgetDemo");  
    50. }  


     

    1. //main.cpp   
    2. #include <QtGui/QApplication>   
    3. #include "mydialog.h"   
    4. int main(int argc, char *argv[])  
    5. {  
    6.   QApplication a(argc, argv);  
    7.   MyDialog dialog;  
    8.   dialog.show();  
    9.   return a.exec();  
    10. }  


     

    资源文件截图:

    程序运行截图:

  • 相关阅读:
    java课堂作业(四)
    java听课笔记(五)
    rsync 无密码传输文件
    HTTP返回码总结 (zz)
    打印1到最大的n位数
    两个栈模拟队列
    合并有序数组
    vim MiniBufExplorer 插件
    crontab 定时任务格式
    JNI调用测试
  • 原文地址:https://www.cnblogs.com/xj626852095/p/3648120.html
Copyright © 2011-2022 走看看