Qt学习笔记


QMainWindow

#include <QMenuBar>
//创建菜单栏 最多有一个
QMenuBar *bar = menuBar();
//把菜单栏放在窗口中
this->setMenuBar(bar);
//创建菜单
QMenu *filename = bar->addMenu("文件");
QMenu *editname = bar->addMenu("编辑");
//创建菜单项
filename->addAction("新建");
filename->addAction("打开");
//添加分隔符
filename->addSeparator();

#include <QToolBar>
//工具栏.可以有多个
QToolBar *toolBar = new QToolBar(this);
//添加到主窗口,设置一开始的停靠方式是靠左停靠
this->addToolBar(Qt::LeftToolBarArea,toolBar);
//后期拖拽设置 只允许 左右停靠
toolBar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);
//设置浮动
toolBar->setFloatable(false);//不能从主窗口脱离出来
//设置移动
toolBar->serMoveable(false);//不能移动
//在工具栏设置内容
toolBar->addAction(QAction("新建"));
//在工具栏添加控件
tooBar->addWidget(QPushButton());

//状态栏 最多有一个
#include <QStatuBar>
QStatusBar *stBar = statusBar();
this->setStatusBar(stBar);
//添加控件
stBar->addWidget(控件);//添加在左侧
stBar->addPermanentWidget(控件);//添加在右侧

//浮动窗口 可以多个
#include<QDockWidget>
QDockWidget *dockWid = new QDockWidget("浮动",this);//窗口标题,父节点
this->addDockWidget(Qt::bottomDockWidgetArea,dockWid);//设置浮动窗口默认位置在核心窗口下面
//设置后期停靠区域
dockWid->setAllowedAreas(Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea);
//设置核心窗口,只能有一个
this->setCentralWidget(窗口类);

资源文件添加

1.先将资源文件复制到项目目录当中
2.项目(右键)->添加新文件->Qt->Qt Resource File->下一步
3.资源->res.qrc(右键)->Open in Editor->添加前缀->添加文件

//使用资源内的文件 规则是 ":+前缀名+文件名"
":/image/123.png"

模态,非模态

模态:与当前窗口交互中,不允许和其他窗口交互
非模态:可以与其他窗口进行操作

connect(ui->btn,&QPushButton::cliked,[=](){
	QDialog dlg = new QDialog(this);
	dlg.resize(150,50);
	dlg.exec();//阻塞了 模态对话框
})

Item Widgets

List Widget

代码如下(示例):

QListWidgetItem *item = new QListWidgetItem("这是一行平平无奇的文字");
ui->listWidget->addItem(item);
item->setTextAlignment(Qt::AlignHCenter);//文字居中显示
//用数组的方式添加内容
ui->listWidget->addItem(QStringList()<<"这是一行字"<<"这是另外一行"<<"嘿嘿,还有一行");

展示一个效果,文字内容并不一样

Tree Widget

//设置水平头
ui->treeWidget->setHeaderLabels(QStringList()<<"这是第一行"<<"第二行在这");
QTreeWidgetItem *item1 = new QTreeWidgetItem(QString()<<"哈哈哈");
QTreeWidgetItem *item2 = new QTreeWidgetItem(QString()<<"嘻嘻嘻");
QTreeWidgetItem *item3 = new QTreeWidgetItem(QString()<<"嘿嘿嘿");
//添加顶层节点
ui->treeWidget->addTopLeavelItem(item1);
ui->treeWidget->addTopLeavelItem(item2);
ui->treeWidget->addTopLeavelItem(item3);
//追加节点
QTreeWidgetItem *item4 = new QTreeWidgetItem(QStringList()<<"直接点"<<"子节点");
item1->addChild(item4);

在这里插入图片描述

Table Widget

//设置列数
ui->tableWidget->setColumnCount(3);
//设置水平表头
ui->tableWidget->setHorizoneaderLabels(QStringList()<<"111"<<"222"<<"333");
//设置行数
ui->tableWidget->setRowCount(5);
//给0行0列设置内容
ui->tableWidget->setItem(0,0,new QTableWidgetItem("666"));

在这里插入图片描述

其他控件

栈控件和下拉框,调整选中状态

ui->stackedWidget->setCurentIndex(0);
ui->combox->setCurentIndex(0);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值