【Qt 学习笔记】QWidget的toolTip属性 | focusPolicy属性


  • 博客主页:Duck Bro 博客主页
  • 系列专栏:Qt 专栏
  • 关注博主,后期持续更新系列文章
  • 如果有错误感谢请大家批评指出,及时修改
  • 感谢大家点赞👍收藏⭐评论✍

QWidget的toolTip属性 | focusPolicy属性

文章编号:Qt 学习笔记 / 19

文章目录

  • QWidget的toolTip属性 | focusPolicy属性
    • 一、toolTip属性
      • 1. 简介
      • 2. API
      • 3. 代码示例
        • 示例1:通过代码设置按钮的 toolTip
    • 二、focusPolicy属性
      • 1. 简介
      • 2. API
      • 3. 代码示例
        • 示例1:使用图形化理解不同的 focusPolicy


一、toolTip属性

1. 简介

在Qt中,toolTip属性用于设置控件的工具提示文本。工具提示文本是当鼠标悬停在控件上时显示的文本,它可以提供额外的信息或指导。可以通过设置控件的toolTip属性来指定工具提示文本。

在Qt中,可以使用以下方法来设置控件的toolTip属性:

  1. 使用setToolTip()方法:可以通过调用控件对象的setToolTip()方法来设置工具提示文本。
  2. 使用setProperty()方法:可以使用控件对象的setProperty()方法来设置toolTip属性。

2. API

API说明
setToolTip设置 toolTip.⿏标悬停在该 widget 上时会有提⽰说明.
setToolTipDuring设置 toolTip 提⽰的时间. 单位 ms.时间到后 toolTip ⾃动消失.

3. 代码示例

示例1:通过代码设置按钮的 toolTip
  • 在界⾯上拖放两个按钮.
    在这里插入图片描述

  • 编写 widget.cpp
    在这里插入图片描述

  • 运行结果(鼠标放上会提示信息)
    在这里插入图片描述

文件代码:

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//设置toolTip显示提示信息ui->pushButton_yes->setToolTip("yes按钮");//设置toolTip的提示时间,单位为msui->pushButton_yes->setToolTipDuration(2000);//设置toolTip显示提示信息ui->pushButton_no->setToolTip("no按钮");//设置toolTip的提示时间,单位为msui->pushButton_no->setToolTipDuration(2000);
}Widget::~Widget()
{delete ui;
}

二、focusPolicy属性

1. 简介

Qt中的focusPolicy属性是用来设置窗口部件的焦点策略的。焦点策略决定了部件在用户交互过程中如何获取和失去焦点。设置控件获取到焦点的策略. ⽐如某个控件能否⽤⿏标选中或者能否通过 tab 键选中.

焦点策略的取值可以是下列之一:

  • Qt::NoFocus:部件永远不会获取焦点。
  • Qt::TabFocus:通过Tab键可以将焦点移动到部件上。
  • Qt::ClickFocus:通过鼠标单击可以将焦点移动到部件上。
  • Qt::StrongFocus:支持通过Tab键和鼠标单击来移动焦点。
  • Qt::WheelFocus:通过滚轮可以将焦点移动到部件上。

使用以下方法来设置部件的focusPolicy属性:

  • setFocusPolicy(QFlagsQt::FocusPolicy policy):设置焦点策略。
  • focusPolicy():获取焦点策略。

例如,以下代码将将一个按钮的焦点策略设置为Qt::ClickFocus:

QPushButton *button = new QPushButton("Click Me");
button->setFocusPolicy(Qt::ClickFocus);

2. API

API说明
focusPolicy()获取该 widget 的 focusPolicy, 返回 Qt::FocusPolicy
setFocusPolicy(Qt::FocusPolicy policy)设置 widget 的 focusPolicy.

3. 代码示例

示例1:使用图形化理解不同的 focusPolicy
  • 在界⾯上创建四个单⾏输⼊框 (Line Edit)
    在这里插入图片描述

  • 修改四个输⼊框的 focusPolicy 属性为 Qt::StrongFocus(一般都是默认值)
    此时运⾏程序, 可以看到, 使⽤⿏标单击/tab, 就可以移动光标所在输⼊框.
    在这里插入图片描述

  • 修改第⼆个输⼊框的 focusPolicy 为 Qt::NoFocus , 则第⼆个输⼊框不会被 tab / ⿏标左键
    选中.
    在这里插入图片描述

  • 修改第三个输⼊框 focusPolicy 为 Qt::TabFocus , 则只能通过 tab 选中, ⽆法通过⿏标选
    中.
    在这里插入图片描述

  • 修改第四个输⼊框 focusPolicy 为 Qt::ClickFocus , 则只能通过鼠标选中, ⽆法通过tab键
    选中.
    在这里插入图片描述


在这里插入图片描述

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

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

相关文章

【GD32】INA226电压电流功率检测模块

2.46 INA226电压电流功率检测模块 2.46.1 模块来源​ 采购链接:​ INA226电压电流功率检测模块 资料下载:(基于该模块的资料,百度云链接等)​ 链接:http://pan.baidu.com/s/1c0DbuXa 密码:3p2…

【数据结构】二叉爆炸

【数据结构】二叉爆炸 按照惯例整点抽象的,贴上这篇博客的名字由来: 言归正传,本篇博客介绍二叉树的构造方式、前中后序遍历、层序遍历以及代码随想录中二叉树章节的相关题目: 代码随想录 (programmercarl.com) 一、啥是二叉树 …

微服务架构使用和docker部署方法(若依)

这里以若依官方网站开源的微服务框架为例子记录使用方法过程。 开源地址:RuoYi-Cloud: 🎉 基于Spring Boot、Spring Cloud & Alibaba的分布式微服务架构权限管理系统,同时提供了 Vue3 的版本 下载后,用IDEA社区版开发工具打…

JAVA集合(学习)

1.Java集合框架体系图 集合框架Collection单列集合List 有序,可重复Vector 数组结构,线程安全ArrayList 数组结构,非线程安全LinkedList 链表结构,非线程安全Set 无序,唯一HashSet 哈希表结构LinkedHashSet 哈希表…

从零自制docker-10-【cgroup进行容器资源限制】

文章目录 目的导入包的相关公开原则当前进程的挂载信息deferfor scanner.Scan()判断字符串包含新建的cgroup的默认文件cpu相关配置对应到ubuntu 22.04版本的cpu相关配置top注意查看你可使用的cpu注意坑启动后的top查看显示进程使用的cpu序号代码结果 目的 启动容器时通过-mem、…

【LAMMPS学习】八、基础知识(2.8)长程色散设置

8. 基础知识 此部分描述了如何使用 LAMMPS 为用户和开发人员执行各种任务。术语表页面还列出了 MD 术语,以及相应 LAMMPS 手册页的链接。 LAMMPS 源代码分发的 examples 目录中包含的示例输入脚本以及示例脚本页面上突出显示的示例输入脚本还展示了如何设置和运行各…

【opencv】示例-train_svmsgd.cpp 随机梯度下降支持向量机(SVMSGD)对二维数据进行分类的UI...

#include "opencv2/core.hpp" // 引入opencv2的核心头文件 #include "opencv2/video/tracking.hpp" // 引入opencv2视频跟踪相关功能的头文件 #include "opencv2/imgproc.hpp" // 引入opencv2的…

什么是 MVVM、mvc 模型

mvc模型 MVC: MVC 即 model-view-controller(模型-视图-控制器)是项目的一种分层架构思想,它把复杂的业务逻辑, 抽离为职能单一的小模块,每个模块看似相互独立,其实又各自有相互依赖关系。它的好处是:保证了…

微服务相关

1. 微服务主要七个模块 中央管理平台:生产者、消费者注册,服务发现,服务治理,调用关系生产者消费者权限管理流量管理自定义传输协议序列化反序列化 2. 中央管理平台 生产者A在中央管理平台注册后,中央管理平台会给他…

移动Web学习06-移动端适配Less预处理器项目案例

项目目标:实现在不同宽度设备中等比缩放的网页效果 Less代码 import ./base; import ./normalize;// 变量: 存储37.5 rootSize: 37.5rem; *{margin: 0;padding: 0; } body {background-color: #F0F0F0; }// 主体内容 .main {// padding-bottom: (50 / 37.5rem);pa…

【uniapp踩坑记】——微信小程序转发保存图片

关于微信小程序转发&保存图片 微信小程序图片转发保存简单说明网络图片的转发保存base64流形式图片转发保存 已经好多年没写博客了,最近使用在用uniapp开发一个移动版管理后台,记录下自己踩过的一些坑 吃相别太难看,搞一堆下头僵尸号来点…

Spring Cloud学习笔记:Eureka集群搭建样例

这是本人学习的总结,主要学习资料如下 - 马士兵教育 1、项目架构2、Dependency3、项目启动类4、application.yml5、启动项目 1、项目架构 因为这是单机模拟集群搭建,为了方便管理就都放在了一个项目中。这次准备搭建三个项目server1, server2, server3 …