gpt4 book ai didi

c++ - 如何在不使用 QApplication 的情况下使用 QCursor::pos()?

转载 作者:搜寻专家 更新时间:2023-10-31 01:04:05 25 4
gpt4 key购买 nike

我在Qt Creator中写一个项目,如果我写

QPoint cursorPos=QCursor::pos();

然后 cursorPos={-2147483648,-2147483648} 这显然是错误的。但是,如果我写

QApplication *application=new QApplication(argc,argv);
QPoint cursorPos=QCursor::pos();

那么 cursorPos 就是正确的鼠标位置。有什么方法可以让 QCursor::pos() 在没有 QApplication 的情况下工作?谢谢。 :D

最佳答案

QApplication 对象做了这么多初始化。 Qt 文档中 QApplication 的主要职责之一:

It manages the application's mouse cursor handling, see setOverrideCursor()

也来自关于 QCursor 的 Qt 文档:

Note: It is possible to create a QCursor before QGuiApplication, but it is not useful except as a place-holder for a real QCursor created after QGuiApplication. Attempting to use a QCursor that was created before QGuiApplication will result in a crash.

因此,如果没有QApplicationQGuiApplication,似乎无法使用QCursor

关于c++ - 如何在不使用 QApplication 的情况下使用 QCursor::pos()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24582682/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com