c – 禁用QDockWidget的拆分器光标
我有以下小部件结构. CDockWidgetInfoBar只是一个QDockWidget派生类
当我移过QDockWidget(CDockWidgetInfoBar)时,我看到这个分割器光标. 它来自哪里?我可以禁用吗?它是QDockWidgetLayout的一部分吗?但是,QDockWidgetLayout是Qt private,不得使用. 有任何想法吗? 解决方法
系统似乎不可能或非常痛苦.
我尝试这样做,因为我在这里这样做:How can I prevent transform cursor to SplitHCursor when it’s under border between QHeaderView sections 但是主要问题是,在QEvent :: Enter事件发生之前出现调整大小的光标. (如果你运行下一个代码,你会先看到调整光标,但你不会看到“添加”字样).据我所知,当它移动到小部件边缘附近时,没有任何可以捕获光标的事件.所以抓住这个事件非常困难.还有另一种方式.在mouseMoveEvent中,每次检查是否在dock小部件附近.但我认为这是非常低效的. 我写了这段代码: if (obj == ui->dockWidget && event->type() == QEvent::Enter) { qApp->setOverrideCursor(QCursor(Qt::ArrowCursor)); qDebug() << "added"; } if (obj == ui->dockWidget && event->type() == QEvent::Leave) { qApp->restoreOverrideCursor(); } 但它确实适用于用户试图浮动停靠. 我知道这不是完整的答案,但也许它有助于或证明这是非常困难的.无论如何,如果有人能找到这个问题的有效解决方案,那将是非常好的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |