【发布时间】:2012-07-09 16:38:29
【问题描述】:
我想知道是否可以更改QTabWidget 的选定选项卡的光标。我的意思是:我想为选定的选项卡设置一个箭头,为其他选项卡设置一个“手”。我能够为小部件的 4 个选项卡设置“手”,但不能单独设置。
我可以这样做吗?
谢谢
---编辑---
我可以访问QTabWidget的QTabBar
【问题讨论】:
标签: qt qtabwidget qtabbar
我想知道是否可以更改QTabWidget 的选定选项卡的光标。我的意思是:我想为选定的选项卡设置一个箭头,为其他选项卡设置一个“手”。我能够为小部件的 4 个选项卡设置“手”,但不能单独设置。
我可以这样做吗?
谢谢
---编辑---
我可以访问QTabWidget的QTabBar
【问题讨论】:
标签: qt qtabwidget qtabbar
子类QTabBar,在其构造函数中打开鼠标跟踪(setMouseTracking(true)),在mouseMoveEvent(QMouseEvent* event)调用tabAt(const QPoint& position) const和currentIndex() const。如果返回相同的数字使用setCursor(Qt::OpenHandCursor),否则使用unsetCursor()返回正常的箭头光标(记得先调用父类实现)。
我假设您可以访问 QTabBar,因为您是从 QTabWidget 派生的,否则您必须对其进行子类化才能设置新的 QTabBar 派生类。
【讨论】: