QTabWidget類的使用

QTabWidget類的使用
//test.h
#include <QWidget>
#include <QDialog>
#include <QTabWidget>
class TabDialog:public QDialog
{
Q_OBJECT
public:
    TabDialog(QWidget *parent=0);
private:
    QTabWidget *tabWidget;
};
class ATab:public QWidget
{
Q_OBJECT
public:
    ATab(QWidget *parent=0);
};
class BTab:public QWidget
{
Q_OBJECT
public:
    BTab(QWidget *parent=0);
};
 
//test.cpp
#include "test.h"
#include <QLabel>
#include <QString>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QPushButton>
TabDialog::TabDialog(QWidget *parent):QDialog(parent)
{
tabWidget=new QTabWidget;
tabWidget->addTab(new ATab,QString("ATab"));
tabWidget->addTab(new BTab,QString("BTab"));
QPushButton *ok=new QPushButton(tr("OK"));
QPushButton *cancel=new QPushButton(tr("Cancel"));
connect(ok,SIGNAL(clicked()),this,SLOT(accept()));
connect(cancel,SIGNAL(clicked()),this,SLOT(reject()));
QHBoxLayout *btnLayout=new QHBoxLayout;
btnLayout->addStretch(1);
btnLayout->addWidget(ok);
btnLayout->addWidget(cancel);
QVBoxLayout *mainLayout=new QVBoxLayout;
mainLayout->addWidget(tabWidget);
mainLayout->addLayout(btnLayout);
setLayout(mainLayout);
resize(500,300);
setWindowTitle(tr("Tab Dialog"));
}
ATab::ATab(QWidget *parent):QWidget(parent)
{
QLabel *aLabel=new QLabel(tr("I am ATab"),this);
}
BTab::BTab(QWidget *parent):QWidget(parent)
{
QLabel *bLabel=new QLabel(tr("I am BTab"),this);
}

//main.cpp
#include <QApplication>
#include "test.h"
int main(int argc,char **argv)
{
QApplication app(argc,argv);
TabDialog t;
t.show();
return app.exec();
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章