QToolTip 的 showText设置显示3秒后关闭
时间: 2024-03-27 14:40:54 浏览: 80
3秒后自动关闭消息框
4星 · 用户满意度95%
要设置 QToolTip 显示 3 秒后自动关闭,您可以使用 QTimer 和 QToolTip::hideText() 方法。您可以创建一个 QTimer 对象,并将其连接到一个 lambda 函数,该函数在计时器超时时会关闭工具提示。
以下是一个示例代码:
```
QPushButton *button = new QPushButton("Click me!");
button->setToolTip("This is a tooltip");
button->show();
// ...
// Show tooltip and start timer to hide it after 3 seconds
QToolTip::showText(button->mapToGlobal(QPoint()), "Click me!");
QTimer::singleShot(3000, [](){
QToolTip::hideText();
});
```
在上述代码中,我们使用 `QToolTip::showText()` 显示工具提示,并使用 `QTimer::singleShot()` 启动一个计时器,该计时器在 3 秒后调用一个 lambda 函数,该函数使用 `QToolTip::hideText()` 方法关闭工具提示。
请注意,由于使用了 lambda 函数,上面的示例代码需要使用 C++11 或更高版本的编译器。如果您使用的编译器版本较旧,则可以将 lambda 函数替换为普通的函数或静态成员函数。
阅读全文