dia1.cpp如下:
#include "dia1.h"
dia1::dia1(QWidget *parent, Qt::WFlags flags)
    : QWidget(parent, flags)
{
    ui.setupUi(this);
}
dia1::~dia1()
{
}
contain.cpp如下:
#include "contain.h"
#include "dia1.h"
#include "dia2.h"
#include "dia3.h"
#include <QListWidget>
#include <QStackedWidget>
#include <QHBoxLayout>
#include <QLabel>
#include "QMessageBox"
#include "QTextCodec"
Contain::Contain(QWidget *parent, Qt::WFlags flags)
    : QWidget(parent, flags)
{
    ui.setupUi(this);
    
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
setWindowTitle(tr("XXXX"));
    stack = new QStackedWidget();
    list = new QListWidget(parent);
    d1= new dia1();
    list->insertItem(0,tr("添加AAA"));
    stack ->addWidget(d1);
    d2= new dia2();
    list->insertItem(1,tr("添加BBB"));
    stack ->addWidget(d2);
    d3= new dia3();
    list->insertItem(2,tr("添加CCC"));
    stack ->addWidget(d3);
    stack->setMinimumSize(QSize(522, 330));
    stack->setMaximumSize(QSize(800, 330));
    //更改字体
    stack->setCurrentWidget(d1);    
    QFont font("AR PL KaitiM GB",12);
    this->setFont(font);
    stack->repaint();
    QHBoxLayout *mainLayout = new QHBoxLayout(this);
    mainLayout->setMargin(10);
    mainLayout->setSpacing(6);
    mainLayout->addWidget(list);
    mainLayout->addWidget(stack,0,Qt::AlignHCenter);
    mainLayout->setStretchFactor(list,1);
    mainLayout->setStretchFactor(stack,1);
    connect(list,SIGNAL(currentRowChanged(int)),stack,SLOT(setCurrentIndex(int)));
    connect(ui.okButton,SIGNAL(clicked()),this,SLOT(add()));
    connect(ui.cancelButton,SIGNAL(clicked()),this,SLOT(reject()));
}
Contain::~Contain()
{
}