QT 多页面切换之QTabWidget
2013-08-28 09:05
381 查看
[cpp]
view plaincopyprint?
//mydialog.h
#ifndef MYDIALOG_H
#define MYDIALOG_H
#include <QDialog>
class QTabWidget;
class MyDialog : public QDialog
{
Q_OBJECT
public:
explicit MyDialog(QWidget *parent = 0);
signals:
public slots:
private:
QTabWidget *tabWidget;
};
#endif // MYDIALOG_H
[cpp]
view plaincopyprint?
//mydialog.cpp
#include "mydialog.h"
#include <QtGui/QTabWidget>
#include <QtGui/QHBoxLayout>
#include <QtGui/QVBoxLayout>
#include <QtGui/QLabel>
#include <QtGui/QLineEdit>
#include <QtGui/QPushButton>
#include <QtGui/QWidget>
#include <QtGui/QIcon>
MyDialog::MyDialog(QWidget *parent) :
QDialog(parent)
{
tabWidget = new QTabWidget();
//新建第一个页面的部件
QWidget *widget = new QWidget();
QLineEdit *lineEdit = new QLineEdit();
QPushButton *pushButton = new QPushButton("Test");
QVBoxLayout *vLayout = new QVBoxLayout();
vLayout->addWidget(lineEdit);
vLayout->addWidget(pushButton);
widget->setLayout(vLayout);
//新建第二个页面的部件
QLabel *label = new QLabel("Hello Qt");
//新建第三个页面的部件
QPushButton *pushButton3 = new QPushButton("Click Me");
//向QTabWidget中添加第一个页面
QIcon icon1(":/new/icon/images/1.ico");
tabWidget->addTab(widget, icon1, "Tab1");
//向QTabWidget中添加第二个页面
QIcon icon2(":/new/icon/images/2.ico");
tabWidget->addTab(label, icon2, "Tab2");
//向QTabWidget中添加第三个页面
QIcon icon3(":/new/icon/images/3.ico");
tabWidget->addTab(pushButton3, icon3, "Tab3");
QHBoxLayout *layout = new QHBoxLayout();
layout->addWidget(tabWidget);
this->setLayout(layout);
this->resize(300, 100);
this->setWindowTitle("QTabWidgetDemo");
}
[cpp]
view plaincopyprint?
//main.cpp
#include <QtGui/QApplication>
#include "mydialog.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MyDialog dialog;
dialog.show();
return a.exec();
}
资源文件截图:
程序运行截图:
view plaincopyprint?
//mydialog.h
#ifndef MYDIALOG_H
#define MYDIALOG_H
#include <QDialog>
class QTabWidget;
class MyDialog : public QDialog
{
Q_OBJECT
public:
explicit MyDialog(QWidget *parent = 0);
signals:
public slots:
private:
QTabWidget *tabWidget;
};
#endif // MYDIALOG_H
//mydialog.h #ifndef MYDIALOG_H #define MYDIALOG_H #include <QDialog> class QTabWidget; class MyDialog : public QDialog { Q_OBJECT public: explicit MyDialog(QWidget *parent = 0); signals: public slots: private: QTabWidget *tabWidget; }; #endif // MYDIALOG_H
[cpp]
view plaincopyprint?
//mydialog.cpp
#include "mydialog.h"
#include <QtGui/QTabWidget>
#include <QtGui/QHBoxLayout>
#include <QtGui/QVBoxLayout>
#include <QtGui/QLabel>
#include <QtGui/QLineEdit>
#include <QtGui/QPushButton>
#include <QtGui/QWidget>
#include <QtGui/QIcon>
MyDialog::MyDialog(QWidget *parent) :
QDialog(parent)
{
tabWidget = new QTabWidget();
//新建第一个页面的部件
QWidget *widget = new QWidget();
QLineEdit *lineEdit = new QLineEdit();
QPushButton *pushButton = new QPushButton("Test");
QVBoxLayout *vLayout = new QVBoxLayout();
vLayout->addWidget(lineEdit);
vLayout->addWidget(pushButton);
widget->setLayout(vLayout);
//新建第二个页面的部件
QLabel *label = new QLabel("Hello Qt");
//新建第三个页面的部件
QPushButton *pushButton3 = new QPushButton("Click Me");
//向QTabWidget中添加第一个页面
QIcon icon1(":/new/icon/images/1.ico");
tabWidget->addTab(widget, icon1, "Tab1");
//向QTabWidget中添加第二个页面
QIcon icon2(":/new/icon/images/2.ico");
tabWidget->addTab(label, icon2, "Tab2");
//向QTabWidget中添加第三个页面
QIcon icon3(":/new/icon/images/3.ico");
tabWidget->addTab(pushButton3, icon3, "Tab3");
QHBoxLayout *layout = new QHBoxLayout();
layout->addWidget(tabWidget);
this->setLayout(layout);
this->resize(300, 100);
this->setWindowTitle("QTabWidgetDemo");
}
//mydialog.cpp #include "mydialog.h" #include <QtGui/QTabWidget> #include <QtGui/QHBoxLayout> #include <QtGui/QVBoxLayout> #include <QtGui/QLabel> #include <QtGui/QLineEdit> #include <QtGui/QPushButton> #include <QtGui/QWidget> #include <QtGui/QIcon> MyDialog::MyDialog(QWidget *parent) : QDialog(parent) { tabWidget = new QTabWidget(); //新建第一个页面的部件 QWidget *widget = new QWidget(); QLineEdit *lineEdit = new QLineEdit(); QPushButton *pushButton = new QPushButton("Test"); QVBoxLayout *vLayout = new QVBoxLayout(); vLayout->addWidget(lineEdit); vLayout->addWidget(pushButton); widget->setLayout(vLayout); //新建第二个页面的部件 QLabel *label = new QLabel("Hello Qt"); //新建第三个页面的部件 QPushButton *pushButton3 = new QPushButton("Click Me"); //向QTabWidget中添加第一个页面 QIcon icon1(":/new/icon/images/1.ico"); tabWidget->addTab(widget, icon1, "Tab1"); //向QTabWidget中添加第二个页面 QIcon icon2(":/new/icon/images/2.ico"); tabWidget->addTab(label, icon2, "Tab2"); //向QTabWidget中添加第三个页面 QIcon icon3(":/new/icon/images/3.ico"); tabWidget->addTab(pushButton3, icon3, "Tab3"); QHBoxLayout *layout = new QHBoxLayout(); layout->addWidget(tabWidget); this->setLayout(layout); this->resize(300, 100); this->setWindowTitle("QTabWidgetDemo"); }
[cpp]
view plaincopyprint?
//main.cpp
#include <QtGui/QApplication>
#include "mydialog.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MyDialog dialog;
dialog.show();
return a.exec();
}
//main.cpp #include <QtGui/QApplication> #include "mydialog.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); MyDialog dialog; dialog.show(); return a.exec(); }
资源文件截图:
程序运行截图:
相关文章推荐
- Qt5.8 多页面切换之QTabWidget
- Qt多页面切换之QTabWidget
- Qt多页面切换之QTabWidget
- Qt基础学习(6)------多页面切换之QTabWidget
- QT 多页面切换之QTabWidget
- Qt基础学习(6)------多页面切换之QTabWidget
- QT类学习系列(1) - 多页面切换之QTabWidget
- Qt 多页面切换stacked widget控件
- Qt学习: QTabWidget多页面部件的用法及程序示例
- qt的tabwidget在button点击下,切换页面
- Qt学习:多页面切换
- Qt QTabWidget的BUG(thinkvd开发日志)
- [Widget]TagTabStrip-ViewPager页面切换标记点
- QT之qss教程-QTabWidget
- qt QTabWidget设置tab头的宽度
- Qt QWebKit模块似的Qt Widget能通过Html的object标签嵌入到web页面中
- Qt中的多页面切换组件
- QtCreator QFrame,QLabel,QStackedWidget(多页面部件),QToolBox(层叠窗口)
- Qt/C++ 动画 stackedWidget切换动画
- Qt中,当QDockWidget的父窗口是一个不可以拖动的QTabWidget的时候实现拖动的方法