欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 时评 > QT creator堆栈窗体demo

QT creator堆栈窗体demo

2025/9/14 22:01:57 来源:https://blog.csdn.net/txwtech/article/details/141898367  浏览:    关键词:QT creator堆栈窗体demo

创建项目选择QDialog,不要选QMainWindow

 

#ifndef DIALOGSTACK_H
#define DIALOGSTACK_H#include <QDialog>
#include <QListWidget>//列表框
#include <QStackedWidget>//堆栈窗体
#include <QLabel>QT_BEGIN_NAMESPACE
namespace Ui {
class DialogStack;
}
QT_END_NAMESPACEclass DialogStack : public QDialog
{Q_OBJECTpublic:DialogStack(QWidget *parent = nullptr);~DialogStack();void InitForm();private:Ui::DialogStack *ui;QListWidget *_lw;QStackedWidget *_sw;QLabel *_lb1;QLabel *_lb2;QLabel *_lb3;QLabel *_lb4;QLabel *_lb5;
};
#endif // DIALOGSTACK_H
#include "dialogstack.h"
#include "ui_dialogstack.h"#include <QVBoxLayout>DialogStack::DialogStack(QWidget *parent): QDialog(parent), ui(new Ui::DialogStack)
{ui->setupUi(this);InitForm();
}DialogStack::~DialogStack()
{delete ui;
}void DialogStack::InitForm()
{setWindowTitle("堆栈窗体demo");//初始化控件_lw = new QListWidget(this);//QListWidget中插入选择项_lw->insertItem(0,"主页");_lw->insertItem(1,"音乐");_lw->insertItem(2,"视频");_lw->insertItem(3,"旅游");_lw->insertItem(4,"故事");//初始化标签控件_lb1 = new QLabel("主页",this);_lb2 = new QLabel("音乐",this);_lb3 = new QLabel("视频",this);_lb4 = new QLabel("旅游",this);_lb5 = new QLabel("故事",this);//创建堆叠窗体_sw = new QStackedWidget(this);//父对象为主窗体//_sw->setStyleSheet("background:red");//将五个label加入_sw中_sw->addWidget(_lb1);_sw->addWidget(_lb2);_sw->addWidget(_lb3);_sw->addWidget(_lb4);_sw->addWidget(_lb5);//对主窗口布局QHBoxLayout *hl = new QHBoxLayout();hl->setMargin(10);//设置边距hl->setSpacing(10);//设置控件间距//布局中加入窗体hl->addWidget(_lw);hl->addWidget(_sw,0,Qt::AlignHCenter);hl->setStretchFactor(_lw,1);//设置控件尺寸占比hl->setStretchFactor(_sw,3);//setLayout(hl);connect(_lw,SIGNAL(currentRowChanged(int)),_sw,SLOT(setCurrentIndex(int)));}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词