QT的ComboBox使用QToolTip显示提示信息

先创建一个QcomboBox的ui控件,在setupComboBoxToolTips方法中去实现显示提示。

实现核心代码

void MainWindow::setupComboBoxToolTips()

{

// 清除现有选项

ui->ModeSelectioComboBox->clear();

// 定义选项和提示

QVector<QPair<QString, QString>> options = {

{"模式0", "test1"},

{"模式1", "test2"},

{"模式2", "test3"},

{"模式3", "test4"}

};

// 添加选项并设置提示

for (int i = 0; i < options.size(); ++i) {

ui->ModeSelectioComboBox->addItem(optionsi.first);

ui->ModeSelectioComboBox->setItemData(i, optionsi.second, Qt::ToolTipRole);

}

}

具体步骤解释如下:

ui->ModeSelectioComboBox->clear();

这行代码清除了组合框中所有现有的选项。确保在添加新选项之前,组合框是空的。

定义了一个QVector,其中每个元素都是一个QPair<QString, QString>,即两个字符串的配对。

第一个字符串是选项的显示文本(如"模式A")。

第二个字符串是对应选项的提示信息(如"这是模式0的详细说明:用于处理类型0的任务")。

使用循环遍历这个QVector:

ui->ModeSelectioComboBox->addItem(optionsi.first);

将每个配对中的第一个字符串(选项文本)添加到组合框中。

ui->ModeSelectioComboBox->setItemData(i, optionsi.second, Qt::ToolTipRole);

为刚添加的选项(索引为i)设置工具提示,即将第二个字符串作为工具提示数据设置到选项上,使用Qt::ToolTipRole角色。

效果展示

相关推荐
小羊没烦恼!1 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
伞伞悦读1 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
C语言小火车1 天前
C/C++ 为什么需要编译器?
开发语言·c++
霍霍的袁2 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
孙启超2 天前
【AI开发之Rust】第 11 课:智能指针与内部可变性
开发语言·后端·rust
此生决int2 天前
深入理解C++系列(20)——C++11(下)
开发语言·c++
CoderYanger2 天前
A.每日一题:835. 图像重叠
java·开发语言·程序人生·leetcode·面试·职场和发展·学习方法
伞伞悦读2 天前
【第37期】Python JSON 与配置详解:序列化、反序列化、嵌套结构和配置文件
开发语言·python·json
CCCCCCCCharlie2 天前
Linux进程控制四大核心操作
linux·开发语言
Brilliantwxx2 天前
【STM32】 SPI Flash 驱动开发实战:阻塞模式驱动 W25Q64(含工程代码)
开发语言·stm32·单片机·嵌入式硬件