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

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

QWidget的toolTip属性 | 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的提示时间,单位为ms
    ui->pushButton_yes->setToolTipDuration(2000);

    //设置toolTip显示提示信息
    ui->pushButton_no->setToolTip("no按钮");
    //设置toolTip的提示时间,单位为ms
    ui->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键
    选中.

目录
相关文章
|
3月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox
【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox
491 4
【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox
|
3月前
Qt绘图之QWidget
Qt绘图之QWidget
67 1
|
3月前
|
开发者
【Qt 学习笔记】Qt系统相关 | Qt事件 | 事件的介绍及基本概念
【Qt 学习笔记】Qt系统相关 | Qt事件 | 事件的介绍及基本概念
177 4
|
3月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 文件对话框QFileDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 文件对话框QFileDialog
587 4
|
3月前
|
数据安全/隐私保护
【Qt 学习笔记】Qt窗口 | 对话框 | 模态与非模态对话框的创建
【Qt 学习笔记】Qt窗口 | 对话框 | 模态与非模态对话框的创建
313 4
|
3月前
|
搜索推荐 C++
【Qt 学习笔记】Qt窗口 | 对话框 | 创建自定义对话框
【Qt 学习笔记】Qt窗口 | 对话框 | 创建自定义对话框
56 4
|
3月前
|
API UED
【Qt 学习笔记】Qt窗口 | 状态栏 | QStatusBar的使用及说明
【Qt 学习笔记】Qt窗口 | 状态栏 | QStatusBar的使用及说明
310 4
|
3月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
199 3
|
3月前
|
数据可视化
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
67 3
|
3月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
428 3