【Qt】窗口——Qt窗口的概念、常用的窗口函数、菜单栏、工具栏、状态栏、浮动窗口、对话框

文章目录

  • Qt
    • 窗口
      • Qt窗口的概念
      • 菜单栏
      • 工具栏
      • 状态栏
      • 浮动窗口
      • 对话框

Qt

在这里插入图片描述
  

窗口

Qt窗口的概念

  QMainWindow 类概述:

  QMainWindow 是一个为用户提供主窗口程序的类,它继承自 QWidget 类,并且提供了一个预定义的布局。

  

在这里插入图片描述

  

菜单栏

  菜单栏常用属性:

  菜单栏(menu bar):位于主窗口的顶部,用于提供各种操作命令的入口,比如文件的打开、保存,编辑操作等。

属性名功能描述
title菜单栏的标题文本。
actions菜单栏中包含的所有动作(菜单项)的列表。
isVisible表示菜单栏是否可见。
font菜单栏的字体设置。
styleSheet用于设置菜单栏的样式表,可控制其外观样式,如颜色、背景等。

  

菜单栏常用函数:

函数名功能描述
addMenu(const QString &title)添加一个菜单,参数为菜单标题。
addAction(QAction *action)向菜单栏添加一个动作(菜单项)。
removeAction(QAction *action)从菜单栏移除一个动作。
menuBar()获取主窗口的菜单栏对象。

  

菜单栏信号:

信号名功能描述
triggered(QAction* action)当菜单项(QAction)被触发(点击)时发出此信号。这个信号对于执行与菜单项相关的操作非常有用,例如在点击 “打开文件” 菜单项时,可以连接这个信号来实现文件打开的功能。
hovered(QAction* action)当鼠标指针悬停在菜单项上时发出。可以用于显示菜单项的提示信息或者改变菜单项的外观以提示用户。

  

在这里插入图片描述

  

在这里插入图片描述

  

在这里插入图片描述

  

工具栏

  工具栏 (tool bars):通常也位于主窗口的上部区域,可提供一些常用操作的快捷按钮,方便用户快速执行相关功能,如在文本编辑器中可能有字体设置、加粗、斜体等快捷按钮的工具栏。

  

工具栏常用属性:

属性名功能描述
orientation工具栏的方向,如水平或垂直。
isVisible工具栏是否可见。
floatable工具栏是否可浮动。
movable工具栏是否可移动。
iconSize工具栏上按钮图标的大小。

  

工具栏常用函数:

函数名功能描述
addToolBar(Qt::ToolBarArea area, QToolBar *toolbar)添加一个工具栏到指定区域,area表示区域,toolbar是工具栏对象。
addAction(QAction *action)向工具栏添加一个动作(工具按钮)。
removeAction(QAction *action)从工具栏移除一个动作。
toolBars()获取主窗口的所有工具栏列表。

  

工具栏信号:

信号名功能描述
actionTriggered(QAction* action)当工具栏上的工具按钮(由 QAction 表示)被点击触发时发出。可以用于执行相应的工具操作,比如在点击 “保存” 按钮时,连接此信号来实现保存文件的功能。

  

在这里插入图片描述

  

在这里插入图片描述

  

状态栏

  状态栏 (status bar):一般位于主窗口的底部,用于显示一些当前应用程序的状态信息,比如当前文档的字数统计、当前操作的提示等。

  

状态栏常用属性:

属性名功能描述
sizeGripEnabled是否显示状态栏右下角的尺寸调整手柄。
isVisible状态栏是否可见。
minimumSize状态栏的最小尺寸。
maximumSize状态栏的最大尺寸。
contentsMargins状态栏内容的边距。

状态栏常用函数:

函数名功能描述
showMessage(const QString &message, int timeout = 0)在状态栏显示一条消息,timeout表示消息显示的时间(毫秒),0 表示一直显示。
addWidget(QWidget *widget, int stretch = 0)向状态栏添加一个小部件,stretch表示拉伸因子。
removeWidget(QWidget *widget)从状态栏移除一个小部件。
statusBar()获取主窗口的状态栏对象。

  

状态栏信号

信号名功能描述
messageChanged(const QString& message)当状态栏显示的消息发生改变时发出。可以用于记录消息变化或者根据消息内容进行其他相关操作。

  

在这里插入图片描述

  

浮动窗口

  浮动窗口(dock widgets):这些部件可以在主窗口内灵活停靠或浮动,用户可根据自己的需求调整它们的位置,比如在一些图形编辑软件中,可能会有颜色选择的浮动窗口等。

  

浮动窗口常用属性:

属性名功能描述
title浮动窗口的标题。
isVisible浮动窗口是否可见。
floating是否处于浮动状态(与停靠相对)。
allowedAreas允许浮动窗口停靠的区域,如顶部、底部、左侧、右侧等。
features浮动窗口的特性,如是否可关闭、是否可最大化等。

  

浮动窗口常用函数:

函数名功能描述
addDockWidget(Qt::DockWidgetArea area, QDockWidget *dockWidget)将浮动窗口添加到指定区域,area是区域,dockWidget是浮动窗口对象。
setAllowedAreas(Qt::DockWidgetAreas areas)设置浮动窗口允许停靠的区域。
toggleViewAction()获取用于切换浮动窗口可见性的动作。
isFloating()判断浮动窗口是否处于浮动状态。

  

浮动窗口信号:

信号名功能描述
visibilityChanged(bool visible)当浮动窗口的可见性发生变化(变为可见或者不可见)时发出。可以用于在浮动窗口显示或隐藏时更新相关的用户界面元素或者执行其他操作。
topLevelChanged(bool topLevel)当浮动窗口的停靠状态发生改变(变为顶级窗口或者变为停靠状态)时发出。这对于处理浮动窗口的布局和交互变化很有用。

  

在这里插入图片描述

  

对话框

  对话框是应用程序中最常用的界面元素。消息对话框主要用于为用户提示重要信息,强制用户进行选择操作。

  

对话框常用属性:

属性名功能描述
modal是否为模态对话框。
windowTitle对话框的标题。
size对话框的大小。
geometry对话框的位置和大小(包括位置坐标和尺寸)。
icon对话框的图标。

  

对话框常用函数:

函数名功能描述
exec()以模态方式显示对话框,阻塞直到用户关闭对话框并返回结果。
show()以非模态方式显示对话框,对话框立即显示且程序继续执行。
setWindowTitle(const QString &title)设置对话框的标题。
accept()关闭对话框并设置结果为Accepted。
reject()关闭对话框并设置结果为Rejected。

  

对话框信号:

信号名功能描述
accepted()当用户以 “接受” 的方式(如点击 “确定” 按钮)关闭模态对话框时发出。通常用于获取用户在对话框中输入的数据并进行相应的处理。
rejected()当用户以 “拒绝” 的方式(如点击 “取消” 按钮)关闭模态对话框时发出。可以用于取消正在进行的操作或者恢复之前的状态。

  

在这里插入图片描述

            

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/57930.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言初阶:十.结构体基础

♥感谢您阅读本篇文章,文章内容为个人对所学内容的整理总结,欢迎大佬在评论区指点一二。♥ ♥个人主页:折枝寄北-CSDN博客折枝寄北擅长C语言初阶,等方面的知识,折枝寄北关注python,c,java,qt,c语言领域.https://blog.csdn.net/2303_80170533?…

Android Kotlin中协程详解

博主前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住也分享一下给大家, 👉点击跳转到教程 前言 Kotlin协程介绍: Kotlin 协程是 Kotlin 语言中的一种用于处理异步编程的机制。它提供了一…

如何有效解除TikTok账号间的IP关联

在当今社交媒体环境中,TikTok凭借其独特的短视频形式吸引了数以亿计的用户。对许多内容创作者而言,运营多个账号是获取更大曝光和丰富内容的有效策略。然而,如何避免这些账号之间的IP关联,以防止被平台识别并封禁,成为…

标题:自动化运维:现代IT运维的革新力量

标题:自动化运维:现代IT运维的革新力量 随着信息技术的飞速发展,企业对于IT系统的依赖日益加深,系统的稳定性、可用性和安全性成为了业务连续性的关键。在这样的背景下,传统的手工运维方式已难以满足高效、快速响应的需求,自动化运维应运而生,成为了现代IT运维领域的革…

【数据结构】贪心算法:决策的艺术

贪心算法(Greedy Algorithm)是一类在每一步选择中都采取局部最优解的方法,希望最终能够达到全局最优解。通俗地说,贪心算法的思想就是“每一步都尽量做出最好的选择”,以期望整个过程的最终结果也达到最优状态。贪心算…

《Python网络安全项目实战》

《Python网络安全项目实战》 项目1 Python 环境安装任务1.1 Windows上安装Python任务1.2 Ubuntu环境下安装Python 项目2 Python基础练习任务2.1 使用数据类型任务2.2 使用组合数据类型任务2.3 使用控制结构任务2.4 使用函数任务2.5 使用模块 项目3 处理文件中的数据任务3.1 读文…

雷赛L6N伺服驱动器基本参数设置——EtherCAT 总线型

1、指令脉冲设置 PA0.08代表电机转一圈,所需要的指令脉冲数,该值驱动器默认值为0,该值更改后断电重启后生效。 2、编码器反馈脉冲设置 PA0.11,代表编码器输出每转脉冲数,实际反馈的脉冲数做了4倍频处理,设…

MySql数据库中数据类型

本篇将介绍在 MySql 中的所有数据类型,其中主要分为四类:数值类型、文本和二进制类型、时间日期、String 类型。如下(图片来源:MySQL数据库): 目录如下: 目录 数值类型 1. 整数类型 2. …

【论文笔记】MLSLT: Towards Multilingual Sign Language Translation

🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。 基本信息 标题: MLSLT: Towards Multiling…

系统架构设计师教程 第2章 2.6 计算机语言 笔记

2.6计算机语言 ★★★★☆ 2.6.1计算机语言的组成 计算机语言 (Computer Language) 是指用于人与计算机之间交流的一种语言,是人与计算机之间传递信息的媒介。 计算机语言主要由一套指令组成,指令一般包括表达式、流程控制和集合三大部分内容。 表达…

道路车辆功能安全 ISO 26262标准(9-2)—面向汽车安全完整性等级 (ASIL) 和安全的分析

写在前面 本系列文章主要讲解道路车辆功能安全ISO26262标准的相关知识,希望能帮助更多的同学认识和了解功能安全标准。 若有相关问题,欢迎评论沟通,共同进步。(*^▽^*) 1. 道路车辆功能安全ISO 26262标准 9. ISO 26262-9 面向汽车安全完整…

基于JSP的高校食堂食材选购管理系统【附源码】

基于JSP的高校食堂食材选购管理系统 效果如下: 系统首页界面 用户登录页面 食材信息页面 论坛交流界面 管理员登录界面 管理员功能主界面 食材信息管理界面 订单配送管理界面 用户功能主界面 商家功能主界面 司机功能主界面 研究背景 近年来互联网技术的发展使得…

新王Claude 3.5的6大应用场景

Anthropic AI深夜发布了备受期待的Claude 3.5系列更新,包括了全新升级的Claude 3.5 Sonnet和首发的Claude 3.5 Haiku。 Claude 3.5 Sonnet能够理解细微的指令和上下文,识别并纠正自身错误,还能从复杂数据中生成深入的分析和洞察。 结合最先进…

java项目之在线考试系统设计与实现(springboot)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的在线考试系统设计与实现。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 基于JavaWeb技术…

PostgreSQL C++客户端API libpqxx的使用

PostgreSQL是一个先进的、开源的、免费的、功能强大的关系型数据库,缩写版是postgres。它使用一种客户端/服务器(C/S)的模型。一次PostgreSQL会话由下列相关的进程(程序)组成: (1).一个服务器进程,它管理数据库文件、接受来自客户端应用与数据…

C++研发笔记8——C语言程序设计初阶学习笔记6

在第一部分——课前准备的学习中,我就提到了学习C语言的过程中,练习是必不可少的环节,所以本篇笔记我们来进行记录我们学习《C语言程序设计初阶》阶段的第一篇练习文章。 题目一 下面哪个不是C语言内置的数据类型: A.char B.d…

mysql5.7.44 arm 源码编译安装

一、:下载源码:mysql官网:MySQL :: MySQL Downloads #####下载mysql安装包 : 网址:https://www.mysql.com/ 可在页面下载后上传或直接下载。 官网地址首页,拉到最底部,找到社区版本下载&#xf…

财务域——财务信息化

摘要 博文探讨了企业财务信息化相关内容。首先阐述了企业以创造价值为目标,涉及业务、管理和信息三大循环。业务循环涵盖获取 / 支付、转换、销售 / 收款等环节;管理循环包含计划、执行、控制与决策;信息循环强调数据的收集、处理、存储与输…

【Linux | IO多路复用】epoll的底层原理详解

epoll 是一种高效的 I/O 多路复用机制,广泛用于 Linux 系统中,用于处理大量并发的文件描述符。它比传统的 select 和 poll 方法具有更好的性能,特别是在处理大量并发连接时。 1.epoll的设计思路 epoll是在select 出现 N 多年后才被发明的&a…

week08 zookeeper多种安装与pandas数据变换操作-new

课程1-hadoop-Zookeeper安装 Ububtu18.04安装Zookeeper3.7.1 环境与版本 这里采用的ubuntu18.04环境的基本配置为: hostname 为master 用户名为hadoop 静态IP为 192.168.100.3 网关为 192.168.100.2 防火墙已经关闭 /etc/hosts已经配置全版本下载地址&#xff1…