8

在我的 Qt 应用程序中,我想使用Windows 用户体验指南中所示的气球/气球提示(不是系统托盘气球)。

Qt 支持吗?我什么也没找到。是否有一个开源库(Qxt 没有)?自己创建它的最佳方法是什么?

4

3 回答 3

0

搜索QBalloonTip类(在 Qt 文档(doxygen 参考)和代码库中,查看它是如何实现的,并使用类似的技术。

于 2011-10-24T17:13:09.997 回答
0

您可以使用QBalloonTipwhich 是定义在中的内部类:

  • Qt 5:

    QtDir/Src/qtbase/src/widgets/util/qsystemtrayicon_p.h

  • Qt 4:

    QtDir/src/gui/utils/util/qsystemtrayicon_p.h

QBalloonTip继承QWidgetqsystemtrayicon.cpp在同一目录中实现。它具有以下显示气球提示的方法:

void QBalloonTip::balloon(const QPoint& pos, int msecs, bool showArrow)

您可以修改此类的源代码以获得所需的气球提示。

于 2014-05-07T17:31:45.073 回答
0

要在 Qt 5.12 中使用私有类QBaloonTip,您需要执行以下操作:

1) 添加QT += widgets-private到您的 PRO 文件中,以便能够包含私有标头

2)#include <QtWidgets/private/qsystemtrayicon_p.h>在您的源文件中

然后调用静态方法showBallon()或实例化它并调用baloon(). 但它实际上只适用于系统托盘,它是一个私有 API,可以随时更改。我个人不会使用它。但是,如果您想知道它是如何呈现的,请查看https://code.woboq.org/qt5/qtbase/src/widgets/util/qsystemtrayicon.cpp.html#_ZN11QBalloonTip10paintEventEP11QPaintEvent

于 2019-02-03T15:40:58.410 回答