QT - Day 2
- QMainWindow
- 菜单栏 最多有一个
- QMenuBar *bar = MenuBar();
- setMenuBar(bar);
- QMenu *fileMenu = bar->addMenu("File"); 创建菜单
- QAction *newAction = fileMenu->addAction("New"); 创建菜单项
- fileMenu->addSeparator(); 添加分割线
- 工具栏 可以有多个
- QToolBar *toolbar = new QToolBar(this);
- addToolBar(默认停靠区域, toolbar); Qt::LeftToolBarArea
- 设置 后期停靠区域,设置浮动,设置移动
- 添加菜单项 或者添加小空间
- 一些代码:
//菜单栏创建 只能最多有一个
QMenuBar*bar = menuBar();
setMenuBar(bar);
QMenu *fileMenu = bar->addMenu("File");
QMenu *editMenu = bar->addMenu("Edit"); QAction * newAction = fileMenu->addAction("New");
//添加分割线
fileMenu->addSeparator();
QAction * openAction = fileMenu->addAction("Open"); //工具栏 可以有多个
QToolBar *toolbar = new QToolBar(this);
addToolBar(Qt::LeftToolBarArea,toolbar);
//设置停靠范围
toolbar->setAllowedAreas(Qt::LeftToolBarArea | Qt::RightToolBarArea);
//设置浮动
toolbar->setFloatable(false);
//设置移动(总开关)
toolbar->setMovable(false);
//工具栏中设置内容
toolbar->addAction(newAction);
toolbar->addSeparator();
toolbar->addAction(openAction);
//工具栏中添加控件
QPushButton *btn = new QPushButton("button",this);
toolbar->addWidget(btn);
- 状态栏的创建 最多一个
//状态栏 最多有一个
QStatusBar *stBar = statusBar();
//设置到窗口中
setStatusBar(stBar);
//放标签控件
QLabel * label = new QLabel("提示信息", this);
stBar->addWidget(label); QLabel *label2 = new QLabel("右侧提示信息",this);
stBar->addPermanentWidget(label2); - 铆接部件 浮动窗口 可以多个
//铆接部件(浮动窗口) 可以有多个
QDockWidget *dockWidget = new QDockWidget("浮动");
addDockWidget(Qt::BottomDockWidgetArea,dockWidget);
//设置后期停靠区域, 只允许上下
dockWidget->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea); - 设置核心部件 只能一个
//设置中心部件
QTextEdit *edit = new QTextEdit();
setCentralWidget(edit); - 资源文件
- 将图片文件拷贝到项目位置下(这个很重要,如果放到其他路径下,会报错)
- 右键项目->添加新文件->Qt->Qt resource->给资源文件起名(比如res)
- res生成res.qrc
- open in editor 编辑资源
- 添加前缀 添加文件
- 使用 ":+ 前缀名 + 文件名"
- 示意图

- 菜单栏 最多有一个
QT - Day 2的更多相关文章
- QT内省机制、自定义Model、数据库
本文将介绍自定义Model过程中数据库数据源的获取方法,我使用过以下三种方式获取数据库数据源: 创建 存储对应数据库所有字段的 结构体,将结构体置于容器中返回,然后根据索引值(QModelIndex) ...
- Ubuntu 下安装QT
Ubuntu 下安装QT 本文使用的环境 QT Library: qt-everywhere-opensource-src-4.7.4.tar.gz QT Creator: qt-creator-li ...
- Qt安装配置
Qt Creator: 下载: Qt 5.5.1 for Windows 32-bit(MinGW 4.9.2, 1.0 GB):http://download.qt.io/official_rele ...
- Qt信号与槽自动关联机制
参考链接1:http://blog.csdn.net/skyhawk452/article/details/6121407 参考链接2:http://blog.csdn.net/memory_exce ...
- 保持Qt GUI响应的几种方法
最开始使用Qt时就遇到过QT Gui失去响应的问题,我是用多线程的方式解决的,然而通常来说,多线程是会降低程序的运行速度. 之后,在使用QSqlQuery::execBatch()函数时,Qt Gui ...
- Qt 中使用Singleton模式需小心
在qt中,使用Singleton模式时一定要小心.因为Singleton模式中使用的是静态对象,静态对象是直到程序结束才被释放的,然而,一旦把该静态对象纳入了Qt的父子对象体系,就会导致不明确的行为. ...
- Qt——组件位置随窗口变化
当我们用Qt Designer设计界面时,有时会面临这样一个问题:需要在窗口指定位置放置组件,并且当窗口位置大小改变时,该组件相对其父对象的位置是不变的,如下面两幅图所示 ,首先看上面这幅图,注意bu ...
- (转) Qt 出现“undefined reference to `vtable for”原因总结
由于Qt本身实现的机制所限,我们在使用Qt制作某些软件程序的时候,会遇到各种各样这样那样的问题,而且很多是很难,或者根本找不到原因的,即使解决了问题,如果有人问你为什么,你只能回答--不知道. 今天我 ...
- qt中ui的 使用介绍
1.什么是ui?ui通常是用Qt 设计师设计出来的界面文件的后缀.通常情况下ui是一个指向这个界面类的指针.ui-> 一般就是用来访问这个界面类里面的控件.例如你的ui文件里有一个叫okButt ...
- Qt 开启鼠标跟踪,自动激活mouseMoveEvent的问题
最近在Qt上实现一个功能,鼠标在图片上移动,触发mouseMoveEvent事件,进而生成一个小的半透明窗口,放大显示以鼠标为中心的一个区域的图像并随鼠标移动.但是,必须鼠标摁下,才触发mouseMo ...
随机推荐
- [转帖]Prometheus 监控之 Blackbox_exporter黑盒监测 [icmp、tcp、http(get\post)、dns、ssl证书过期时间]
Blackbox_exporter 主动监测主机与服务状态 Prometheus 官方提供的 exporter 之一,可以提供 http.dns.tcp.icmp 的监控数据采集 官方github: ...
- [转帖]黄东旭:TiDB的优势是什么?
https://tidb.net/book/tidb-monthly/2022/2022-07/usercase/tidb-advantage "云原生"."分布式&qu ...
- Tidb 使用minio 进行br备份数据库的过程
Tidb 使用minio 进行br备份数据库的过程 背景 br 备份恢复时一般需要共享存储. 前段时间一直使用的是nfs 进行共享文件备份. 这样需要所有的机器在 相同的目录下面挂载相同的nfs. 并 ...
- Kafka学习之四_Grafana监控相关的学习
Kafka学习之四_Grafana监控相关的学习 背景 想一并学习一下kafaka的监控. 又重新开始学习grafana了: 下载地址: https://grafana.com/grafana/dow ...
- Oracle AWR学习之二-利用ChatGPT编写一键获取AWR报告的脚本
Oracle AWR学习之二-ChatGPT提升效率之n 背景 之前生成awr报告比较麻烦, 想着能够一键生成. 再辅以部分shell或者是python处理就可以进行细致的分析. 这一块其实还是比较简 ...
- [转帖]Windows版本vcenter server6.0的SSO密码重置
Windows版本的SSO重置与vCenter Server Appliance的重置类似 登录vcenter服务器,打开DOS窗口,输入 cd c:\Program Files\VMware\vCe ...
- [转帖]⭐万字长篇超详细的图解Tomcat中间件方方面面储备知识⭐
https://developer.aliyun.com/article/885079?spm=a2c6h.24874632.expert-profile.321.7c46cfe9h5DxWK 202 ...
- Nginx 按天拆分日志
https://blog.csdn.net/linpxing1/article/details/104059857 ### 关键位置 start if ($time_iso8601 ~ '(\d{4} ...
- Unity下调试ToLua(基于IDEA和VSCode)
公司移动端项目是基于Unity的,底层支持由C#提供,上层Lua调用C#中注册的函数支持来做业务逻辑,框架用的是ToLua.开始做移动端有一段时间了,一直都觉得调试代码是个很蛋疼的体验:几乎都是靠肉眼 ...
- ABP系列文章收藏
1.ASP.NET样板开发框架ABP系列之ABP入门教程详解: https://www.php.cn/csharp-article-380181.html 2.官网中文翻译: https://www ...