Qt——QMainWindow不同功能栏基础操作总结

2023-11-12

目录

一.菜单栏

二.工具栏

三.状态栏

四.浮动窗口/铆接部件

五.中心部件/中心控件


一.菜单栏

<QMenuBar>

<QMenu>

只能有一个

1.创建菜单栏

QMenuBar* bar = new QMenuBar(this);

2.将菜单放入主窗口

this->setMenuBar(bar);

3.创建菜单

QMenu* start = bar->addMenu("start");

 4.添加菜单项

start->addAction("save");

5.添加分隔线

start->addSeparator();

二.工具栏

<QToolBar>

可以有多个

1.创建并添加工具栏,初始化停靠位置为左侧

QToolBar* tool = new QToolBar(this);
this->addToolBar(Qt::LeftToolBarArea, tool);

2.添加工具项,可添加控件

tool->addAction("search");
QPushButton* but = new QPushButton("save", this);
tool->addWidget(but);//添加按钮控件

3.选择移动属性(能否移动),默认移动

tool->setMovable(false);//不能移动

 4.选择浮动属性(是否必须停靠),默认浮动

tool->setFloatable(false);//禁止浮动

5.选择后续停靠状态

//允许左右停靠
tool->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);

三.状态栏

<QStatusBar>

只能有一个

1.创建并添加状态栏

 QStatusBar* status = new QStatusBar(this);
 this->setStatusBar(status);

2.添加控件,默认在左侧 

QPushButton* but = new QPushButton("save", this);
status->addWidget(but);

 注:addAction添加action类不报错,但是无效

3.从右侧添加控件

QLabel * lab = new QLabel("status", this);
status->addPermanentWidget(lab);//添加标签控件

四.浮动窗口/铆接部件

<QDockWidget>

可以有多个

1.创建并添加浮动窗口,需要给定初始化位置

QDockWidget* dock = new QDockWidget("Dock", this);
addDockWidget(Qt::BottomDockWidgetArea, dock);//底部

2.选择浮动方式,默认浮动

dock->setFloating(true);

 3.选择停靠位置

dock->setAllowedAreas(Qt::AllDockWidgetAreas);//全方位停靠

 4.添加控件

QPushButton* but = new QPushButton("save", this);
dock->setWidget(but);

5.设置窗口大小

dock->resize(200, 50);

五.中心部件/中心控件

以记事本为例

<QTextEdit>

1.创建记事本控件

QTextEdit* text = new QTextEdit(this);

2.添加中心控件

setCentralWidget(text);

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt——QMainWindow不同功能栏基础操作总结 的相关文章

  • 如何以编程方式在 qml 中渲染 vtk 项目?

    到目前为止 我了解到我们在 QML 中有两个线程 我们的主应用程序线程和我们的 场景图 线程 http doc qt io qt 5 qtquick visualcanvas scenegraph html http doc qt io q
  • 如何使用 PyQt5 在 QWidget 上设置 numpy 数组图像

    我正在将相机中的图像作为 numpy 数组读取 我的目标是将其放入 pyqt5 的 Qwidget 中并在我的 mainwindow gui 程序上打印 但我收到以下错误 TypeError QPixmap argument 1 has u
  • QtWebKit 无需安装 flash 播放器即可播放 HTML5 视频

    安装最新的 Flash 播放器并启用插件后 我的简单示例可以播放 YouTube 视频 操作系统 Windows 7 Qt 4 7 4 32 位和 64 位均可 但是 根据 http www youtube com html5 我的示例浏览
  • 如何在“单击”槽中使用 QApplication::mouseButtons() 来判断鼠标按钮?

    我有一个 QMainWindow 并且想要处理来自其中较小的小部件 例如 tableview 的 单击 信号 最初我将信号连接到这个 QMainWindow 的插槽 这是最常见的方法 现在我需要判断单击了哪个鼠标按钮 并对左右按钮执行不同的
  • 如何在子进程期间和之后执行操作

    我有一个调用子程序的程序 当子程序使用 Popen 运行时 我需要禁用运行按钮并启用停止按钮 但是 由于Popen打开了一个新进程 因此程序完成后应该打印的内容会立即打印出来 我尝试添加self p communicate after Po
  • Qt 中浮点数的强制点而不是逗号

    我有一个非常基本的问题 如何在 Qt 中强制使用浮点数中的点而不是逗号 我的操作系统有法语版本 其他问题 是否可以显示带有千位分隔符空格的数字 尝试这个 QLocale loc QLocale system current locale l
  • 对 MasterController::StaticMetaObject 的未定义引用

    我刚刚开始学习 Qt 目前正在阅读这本书学习 Qt 5 作者 Nicolas Sheriff 在我所在的位置 在第 2 章中 我遵循所有说明 并且理解我在做什么 但我陷入了一件事 当我与其他程序一起编译以下程序时 我收到此错误列表 显示错误
  • 如何在 PyQt 应用程序退出时禁用清除剪贴板?

    我有一个简单的 PyQt4 应用程序 请参阅下面的代码 它揭示了一个问题 如果我从QLineEdit并将其复制到剪贴板 然后我只能在应用程序运行时将其粘贴到另一个应用程序 似乎在退出时 PyQt 应用程序会清除剪贴板 因此我无法在应用程序关
  • 为树视图创建 Qt 模型

    我正在用 Qt 使用 C 编写一个应用程序 我需要在树视图中表示一个对象结构 实现此目的的方法之一是为此创建一个模型 但在阅读有关该主题的 Qt 文档后我仍然很困惑 我的 结构 非常简单 有一个Project持有的物体Task中的对象std
  • 更改 Qt 中的标签

    我正在尝试制作一个由按钮和标签组成的简单程序 当按下按钮时 它应该将标签文本更改为程序内 QString 变量中的任何内容 到目前为止 这是我的代码 这是我的 widget h 文件 class Widget public QWidget
  • QGeoCoordinate:没有这样的文件或目录

    我正在尝试使用 QtLocation 但不能 我不明白为什么 我在 ubuntu 14 04 上使用 qt5 3 2 这很奇怪 因为我将这一行添加到我的 pro 文件中 QT network CONFIG mobility MOBILITY
  • 纹理openGl。 C++、qt

    我试图用草纹理覆盖我的地形 由高度图制成 但它没有按预期工作 我什至无法在简单的 GL QUAD 上获取纹理 结果是多色网络 void GLWidget initializeGL glEnable GL TEXTURE 2D 在 QGLwi
  • 如何使用 QWebElement 设置 input(type="file") 的值?

    我正在尝试将照片上传到vk com https vk com using QtWebKit https qt project org doc qt 4 8 qtwebkit html模块 我面临的问题是无法正确填写input type fi
  • Qt 5.4/Qml:防止绑定循环

    我有一个全局单例 设置 它保存应用程序设置 当我尝试运行以下代码时 我得到一个QML CheckBox Binding loop detected for property checked CheckBox checked Settings
  • QOpenGLFunctions 缺少重要的 OpenGL 函数

    QOpenGLFunctions 似乎缺少重要的函数 例如 glInvalidateFramebuffer 和 glMapBuffer 据我了解 QOpenGLFunctions 加载桌面 OpenGL 函数和 ES 函数的交集 如果是这样
  • 如何在Qt WebKit中将网页保存为“另存为完整网页”

    我需要使用 Qt WebKit 保存网页 类似于 另存为完整网页 以下是我的要求 保存索引html文件 维护实体编码 需要下载所有链接的图像和其他资源 需要将html页面中的资源路径更改为本地下载路径 需要维护网页当前状态 我可以使用 Qt
  • QML 适合所有分辨率的屏幕

    大家好 我的 QML 代码有问题 我犯了一个错误 我给元素设置了一定的大小 现在我在将应用程序放在其他设备上时遇到了问题 我会将我的代码粘贴到有宽度和高度的位置 以便您可以更改它以向我展示如何使用动态调整大小 我需要说我正在使用以下代码从
  • 如何使小部件溢出以使滚动条出现在 Qt 中?

    我的小部件的结构是 QWidget 定制为带有圆角边框的面板 要在边界内包含一个带有滚动条并带有边距的区域 然后我将其放入其中 QScrollArea 与 QVBoxLayout 垂直添加内容 然后我在其中添加一系列 标题间距为 0 的 Q
  • QCalendarWidget - 如何突出显示日期

    我有一个QList
  • Qt 的最佳实践包括和预编译头文件?

    当使用现代和最新的 C 编译器 例如 MSVC2015 并激活预编译头时 当前关于包含 Qt 头文件的 最佳实践 是什么 Example include

随机推荐

  • UVa10881题解报告

    题目 L长的棍子上有n个蚂蚁 他们分别向左或右爬 速度为1 求T时间后各蚂蚁的状态 题解 白书给出了一个很巧妙的解法 将蚂蚁看作质点 相撞掉头等于对穿而过 因为掉头所以 他们最后的顺序与输入时在棍子上的顺序相同 所以只要记录下初始状态下蚂蚁
  • Qt——正则表达式

    在项目中经常会遇到对字符串进行操作的情况 我们可以直接使用QString的一些函数 但QT提供了一个更加强大的类 QRegExp 使用正则表达式来操作字符串 先说说我最近遇到的几个问题 1 对输入框LineEdit中的输入内容加以限制 比如
  • 【Scrapy中的图片和文件】scrapy系统内置的图片下载管道

    理论基础 官方文档 https scrapy chs readthedocs io zh CN 0 24 topics images html highlight image 三个基本操作 1 在items py中定义image urls
  • 定义一个结构体指针需要分配存储空间?

    前言 问题的来源于在学数据结构的时候 C 的语法和C语言的语法竟然不一样 1 首先函数的参数有两种传递方式 一个是值传递 一个是地址传递 当指针作为参数传递的时候 即为地址传递 但C 写的时候需要加 引用符号 而C语言却不用 2 本文谈的是
  • RJ45以太网接口的EMC设计方案

    RJ45以太网接口的EMC设计方案 网口emc设计 打怪升级ing的博客 CSDN博客 目录 一 接口概述 二 接口电路原理图的EMC设计 1 电路滤波设计要点 2 电路防雷设计要点 三 连接器设计 四 线缆设计 电缆设计 走线设计 屏蔽层
  • 【mmcv安装使用】

    文章目录 一 前言 二 mmcv安装 1 安装方案a 2 安装方案b 三 mmclassification使用 1 目录说明 2 数据集 3 根据自己数据修改文件 4 demo测试 5 测试结果 6 数据增强可视化 7 日志分析 个人网站
  • 第二十二篇 ResNet实战

    文章目录 摘要 1 项目结构 2 划分训练集和测试集 3 计算mean和Standard 3 1 标准化的作用 3 2 归一化的作用 4 Mixup CutMix CutOut数据集增强 5 训练
  • 机器学习类论文撰写框架

    在听了讲座 如何写好一篇高质量机器视觉学术论文 后 进行的笔记总结 以视觉方向为例 根据本篇框架 在阅读论文中学习写作方法 并把握论文要点 摘要 Abstract 问题是什么 我们做了什么 我们大概是怎么做的 我们做的效果不错 引言 Int
  • 基于FaceX-Zoo实现的人脸识别系统

    基于FaceX Zoo实现的人脸识别系统 项目简介 项目地址 https github com mundanePeo faceRecognition 本项目基于京东AI的人脸识别框架工具集FaceX Zoo所实现的人脸识别系统项目 本项目以
  • Chrome & Firefox 无法打开网页的修复操作

    step 1 开始按钮右击 选择windows powershell 管理员 Step 2 输入命令 netsh winsock reset 回车 Step 3 重启电脑 debug成功
  • Efficient Global 2D-3D Matching for Camera Localization in a Large-Scale 3D Map

    文章目录 Efficient Global 2D 3D Matching for Camera Localization in a Large Scale 3D Map 1 相似源码 choose solution py eight poi
  • C++(11):tuple

    C 11引入了tuple 元组 tuple可以被看作是一个模板化的结构体 可以在定义时包含任意类型任意数量的成员 可通过如下几种方式创建tuple tuple
  • Android Studio 由代理引起的 (Connection refused)、(Read time out)

    首先明确一点 此类问题皆是因为大陆的墙厚又高 在 AS 的 Gradle 构建依赖时由于网速 大陆墙等原因 会遇到各种各样的问题 十分的苦恼而又无可奈何 如果不能定为具体原因 就只能看项目一路飘红了 1 定位问题 由于项目需要对 Andro
  • spring通过@Value注解注入带默认值的map

    背景 项目开发过程中有需要注入map的需求 但是大部分是不带默认值的配置 这里补充一下String类型默认值的配置方式 注入Map 配置文件中引入配置 test map key1 value1 key2 value2 在任意Bean中增加
  • 我的世界 红石信号 服务器,我的世界0.13.1红石信号延续方式介绍

    今天搞趣网小编为大家带来我的世界0 13 1红石信号延续方式介绍 下面小编为大家详细讲解我的世界0 13 1红石信号延续方式介绍 希望对大家有所帮助 红石电路的从一个信号源发出的信号是有强度限制的 当电路超过15格的距离后信号就会消失 在制
  • Sqli-labs Less18-22 HTTP 头注入 POST

    本文记录 SQL 注入的学习过程 资料为 SQLi SQLi 博客目录 Less 18 POSt Header injection Uagent field Error vased 测试漏洞 源代码 uname check input PO
  • 协调能力体现在哪些方面

    协调能力主 要表现在以下几个方面 1 熟悉和掌握组织现有的人 财 物等资源状况 及时进行资源合理 调配 2 了解不同人的需求和能力特点 在人员配置上做到优势互补 3 有效调动他人完成任务的积极性 4 成功解决工作过程中出现的棘手冲突或矛盾
  • Matlab中fprintf函数使用

    目录 说明 示例 输出字面文本和数组值 将双精度值输出为整数 将表格数据写入文本文件 获取写入文件的字节数 在命令行窗口中显示超链接 fprintf函数将数据写入文本文件 fprintf fileID formatSpec A1 An fp
  • chatGPT回答字数限制解除-怎么突破chatGPT长度的限制

    ChatGPT如何写作 ChatGPT 是一种基于机器学习的自然语言处理技术 可以自动生成文本 包括段落 文章 新闻 电子邮件 推文等 以下是使用 ChatGPT 进行写作的基本过程 确定写作内容和细节 首先需要 确定要生成的文本内容和相关
  • Qt——QMainWindow不同功能栏基础操作总结

    目录 一 菜单栏 二 工具栏 三 状态栏 四 浮动窗口 铆接部件 五 中心部件 中心控件 一 菜单栏