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. }  


 

资源文件截图:

 

程序运行截图:

posted @ 2013-08-28 09:05  今晚打酱油_  阅读(10820)  评论(0编辑  收藏  举报