- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我需要在 dragEnterEvent 发生时停止 QDrag。我想在不释放鼠标按钮的情况下释放 QDrag。
我曾尝试将事件发送到 QDrag,但没有成功。
QMouseEvent* evt = new QMouseEvent(QEvent::MouseButtonRelease,event->pos() ,Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);
QCoreApplication::sendEvent(drag,evt);
如何实现?
更新:我想在 QDragEvent 发生时释放鼠标。
QMouseEvent* finishMoveEvent = new QMouseEvent (QEvent::MouseButtonRelease, event->pos (), Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);
QTabBar::mouseReleaseEvent(finishMoveEvent);
qApp->sendEvent(parentWidget(),finishMoveEvent);
qApp->sendEvent(drag,finishMoveEvent);
qApp->postEvent(drag,finishMoveEvent,Qt::HighEventPriority);
我尝试了所有可能组合中的每一行。请帮忙。
如何在 QDragEnterEvent 期间释放 QDrag。
最佳答案
拖动本身不接收鼠标事件,小部件接收。拖动过滤器/拦截这些事件。您需要将相关事件发送到目标小部件,并希望用户体验不会受到影响。
关于c++ - 手动停止 QDrag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24360292/
我创建了两个 QCustomListWidget。在 qt 设计器中通过提升 QListWidget。它们之间的拖放效果很好,但是当我调用 QDrag::target()在 QDrag::exec()
我需要在 dragEnterEvent 发生时停止 QDrag。我想在不释放鼠标按钮的情况下释放 QDrag。 我曾尝试将事件发送到 QDrag,但没有成功。 QMouseEvent* evt = n
我有一个在 QTreeView 中使用拖放操作的 Windows/Linux Qt 4.3 应用程序。我有两个非常相似的应用程序,它们使用同一组 Qt 库。拖放在 Linux 上适用于两者,但在 Wi
我正在开发一个具有多个窗口的 Qt 应用程序,并希望为我的程序中的某些元素实现跨窗口拖放功能。 为此,我将事件过滤器附加到要拖动的 QML 元素,并监听 MousePress/MouseMove 事件
我目前正在使用 Qt 4.8.5 和 C++ 开发一个项目。 我创建了一个名为 ItemView 的自定义小部件,并重新实现了拖放方法。问题是,它在 QDrag::exec() 上出现段错误。所以我尝
当我拖动我的 QPushButton 时,它会消失直到掉落。我想在拖动时一直显示按钮。怎么做? 向下拖动我的 Button,包括 QDrag 对象。 如果需要,很乐意分享更多代码:) 我的屏幕照片 c
我正在编写一个小文件/文件资源管理器,但在基于 qt 的应用程序与仅 Windows 平台上的 Skype 聊天窗口之间的交互方面遇到了问题。 当我尝试将文件(由 QDrag 提供的带有 file-u
我是一名优秀的程序员,十分优秀!