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(options[i].first);

ui->ModeSelectioComboBox->setItemData(i, options[i].second, Qt::ToolTipRole);

}

}

具体步骤解释如下:

ui->ModeSelectioComboBox->clear();

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

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

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

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

使用循环遍历这个QVector:

ui->ModeSelectioComboBox->addItem(options[i].first);

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

ui->ModeSelectioComboBox->setItemData(i, options[i].second, Qt::ToolTipRole);

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

效果展示

相关推荐
for_ever_love__20 分钟前
Objective-C学习 NSSet 和 NSMutableSet 功能详解
开发语言·学习·ios·objective-c
似水明俊德6 小时前
02-C#.Net-反射-面试题
开发语言·面试·职场和发展·c#·.net
Thera7777 小时前
C++ 高性能时间轮定时器:从单例设计到 Linux timerfd 深度优化
linux·开发语言·c++
炘爚8 小时前
C语言(文件操作)
c语言·开发语言
阿蒙Amon8 小时前
C#常用类库-详解SerialPort
开发语言·c#
凸头8 小时前
CompletableFuture 与 Future 对比与实战示例
java·开发语言
wuqingshun3141598 小时前
线程安全需要保证几个基本特征
java·开发语言·jvm
Moksha2628 小时前
5G、VoNR基本概念
开发语言·5g·php
jzlhll1239 小时前
kotlin Flow first() last()总结
开发语言·前端·kotlin
W.D.小糊涂9 小时前
gpu服务器安装windows+ubuntu24.04双系统
c语言·开发语言·数据库