qt QDockWidget QStackWidget的简单使用
2013-12-08 15:21
375 查看
stackdlg.h
stackdlg.cpp
qdock.cpp
#include "qdock.h"
#include <QTextEdit>
#include <QDockWidget>
Qdock::Qdock(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
setWindowTitle("Test");
QTextEdit *te = new QTextEdit(this);
te->setText("Main Window");
te->setAlignment(Qt::AlignCenter);
setCentralWidget(te);
QDockWidget *dock = new QDockWidget("Dock Window1", this);
dock->setFeatures(QDockWidget::DockWidgetMovable);
dock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
QTextEdit *te1 = new QTextEdit;
te1->setText("Dock Window1");
dock->setWidget(te1);
addDockWidget(Qt::RightDockWidgetArea, dock);
dock = new QDockWidget("Dock Window2", this);
dock->setFeatures(QDockWidget::DockWidgetClosable | QDockWidget::DockWidgetFloatable);
QTextEdit *te2 = new QTextEdit;
te2->setText("Dock Window2");
dock->setWidget(te2);
addDockWidget(Qt::RightDockWidgetArea, dock);
dock = new QDockWidget("Dock Window3", this);
dock->setFeatures(QDockWidget::AllDockWidgetFeatures);
QTextEdit *te3 = new QTextEdit;
te3->setText("Dock Windo3");
dock->setWidget(te3);
addDockWidget(Qt::RightDockWidgetArea, dock);
}
Qdock::~Qdock()
{
}
#ifndef STACKDLG_H #define STACKDLG_H #include <QtWidgets/QDialog> #include <QListWidget> #include <QStackedWidget> #include <QLabel> #include "ui_stackdlg.h" class StackDlg : public QDialog { Q_OBJECT public: StackDlg(QWidget *parent = 0); ~StackDlg(); private: Ui::StackDlgClass ui; QListWidget *list; QStackedWidget *stack; QLabel *label1; QLabel *label2; QLabel *label3; }; #endif // STACKDLG_H
stackdlg.cpp
#include "stackdlg.h" #include <QHBoxLayout> StackDlg::StackDlg(QWidget *parent) : QDialog(parent) { ui.setupUi(this); setWindowTitle("StackWidget"); list = new QListWidget(this); list->insertItem(0, "windows1"); list->insertItem(1, "windows2"); list->insertItem(2, "windows3"); label1 = new QLabel("label1"); label2 = new QLabel("label2"); label3 = new QLabel("label3"); stack = new QStackedWidget(this); stack->addWidget(label1); stack->addWidget(label2); stack->addWidget(label3); QHBoxLayout *mainLayout = new QHBoxLayout(this); mainLayout->setMargin(5); mainLayout->setSpacing(5); mainLayout->addWidget(list); mainLayout->addWidget(stack, 0, Qt::AlignHCenter); mainLayout->setStretchFactor(list, 1); mainLayout->setStretchFactor(stack, 3); connect(list, SIGNAL(currentRowChanged(int)), stack, SLOT(setCurrentIndex(int))); } StackDlg::~StackDlg() { }
qdock.cpp
#include "qdock.h"
#include <QTextEdit>
#include <QDockWidget>
Qdock::Qdock(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
setWindowTitle("Test");
QTextEdit *te = new QTextEdit(this);
te->setText("Main Window");
te->setAlignment(Qt::AlignCenter);
setCentralWidget(te);
QDockWidget *dock = new QDockWidget("Dock Window1", this);
dock->setFeatures(QDockWidget::DockWidgetMovable);
dock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
QTextEdit *te1 = new QTextEdit;
te1->setText("Dock Window1");
dock->setWidget(te1);
addDockWidget(Qt::RightDockWidgetArea, dock);
dock = new QDockWidget("Dock Window2", this);
dock->setFeatures(QDockWidget::DockWidgetClosable | QDockWidget::DockWidgetFloatable);
QTextEdit *te2 = new QTextEdit;
te2->setText("Dock Window2");
dock->setWidget(te2);
addDockWidget(Qt::RightDockWidgetArea, dock);
dock = new QDockWidget("Dock Window3", this);
dock->setFeatures(QDockWidget::AllDockWidgetFeatures);
QTextEdit *te3 = new QTextEdit;
te3->setText("Dock Windo3");
dock->setWidget(te3);
addDockWidget(Qt::RightDockWidgetArea, dock);
}
Qdock::~Qdock()
{
}
相关文章推荐
- qt QDockWidget QStackWidget的简单使用
- qt QDockWidget QStackWidget的简单使用
- Qt学习:Qt中QDockWidget的简单用法
- QT TableWidget的使用1:简单使用
- Qt4之DockWidget使用
- Qt中简单使用Firebase
- QTableWidget的简单使用
- Qt编程16:Qt向导简单使用(QWizard及QWizardPage)
- Qt ② QStringList的简单使用方法
- Android控件之切换卡TabWidget的简单使用
- Qt 中使用freeType2实现简单的文本渲染
- 使用WinRar将Qt编译生成的exe和依赖的dll文件打包为一个exe文件的简单方法
- Qt学习笔记——QTableWidget使用问题
- QT学习之路————使用QT自带的QSqlDatabase类简单操作sqlite数据库
- 在qt下使用qwt进行的统计图的绘制(配置 简单使用这些)
- Android App Widget的简单使用
- Qt5—可停靠窗口QDockWidget [2013-10-19整理]
- 创建和使用Qt插件的简单例子
- Qt中 QDockWidget的自定义标题栏 以及 tab页的位置
- Qt下QTableWidget的使用