Qt这是使用链接/锚
Qt Whats This using a link/anchor
如何将锚<a>
放入小部件的whatsThis
中以拦截它被单击?
我知道在QLabel中的linkActivated
,或在QTextBrowser中的linkClicked
,但我不知道如何用what This text做同样的事情。
要清楚,我想知道如果没有拦截帮助事件和管理我自己的WhatsThis机制,这是可能的。
如果我理解你的问题,那就是你想知道是否有一个SIGNAL()
。似乎没有。似乎您必须通过派生自己的Widget类或使用某种全局过滤器来监视QWhatsThisClickedEvent
:
http://qtcentre.org/archive/index.php/t - 7394. - html
仅供参考,QWhatsThisClickedEvent
在Qt源中发出的实际点在这里:
http://qt.gitorious.org/qt/qt/blobs/4.7/src/gui/kernel/qwhatsthis.cpp line264
HostileFork的答案非常准确。一种简单的方法可能有效,除非您的小部件本身捕获WhatsThisClicked
事件,那就是在主窗口的小部件中侦听WhatsThisClicked
事件。代码非常简单,如下所示:
bool MyMainWindow::event(QEvent* ev)
{
if (ev->type() == QEvent::WhatsThisClicked)
{
ev->accept();
QWhatsThisClickedEvent* whatsThisEvent = dynamic_cast<QWhatsThisClickedEvent*>(ev);
assert(whatsThisEvent);
QDesktopServices::openUrl(whatsThisEvent->href());
return true;
}
return QMainWindow::event(ev);
}
相关文章:
- Qt creator 4.11,在应用程序输出面板中创建一个链接
- Libharu 解释 QT c++ 中的链接
- Qt5 C++将新窗口与Qt设计器链接
- 确定Qt库链接
- Qt & Firebase C++ SDK 在 iOS 上的链接问题
- 在Qt中链接具有非标准名称的lib文件
- CMake Qt建立在Windows链接器问题之上
- libGL确实存在,但链接器找不到它 - Qt 4.8.7,CentOS 7.5
- 静态链接MSVC库,动态链接Qt
- 将Qt应用程序与CMake和Visual Studio链接起来
- 将OpenBLAS与Qt Creator项目链接
- 设置Qt Creator以链接和编译汇编代码
- 如何静态链接Qt库?
- 在 cmake 中链接 Qt 对象
- 链接QT创建插件编辑器 /荧光笔
- 链接Qt应用程序时出现数百个"undefined reference"错误
- 如何在Qt-Creator上链接Qt API和GStreamer(MacOS)
- 链接Qt创建者中的外部静态库
- 链接qt库错误
- 如何在Linux中链接QT和OpenCV