- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在使用 GetCursorPos 时遇到问题。我使用 directx 在光标所在的位置绘制一个正方形,但我的代码不起作用,我也不知道为什么...
LPPOINT cursorPos = 0;
GetCursorPos(cursorPos);
square->setPosition(D3DXVECTOR2(40.0f,60.0f)); // as a test: works fine...
square->setPosition(D3DXVECTOR2(cursorPos->x, cursorPos->y)); // -> crash
我也试过这个:
LPPOINT cursorPos = 0;
GetCursorPos(cursorPos);
float posX = cursorPos->x; // no crash...
float posY = cursorPos->y; // no crash...
std::cout << posX << posY <<std::endl; // CRASH!
我做错了什么??
最佳答案
当您声明一个LPPOINT
时,您是在声明一个指向POINT
对象的指针。因此,当你写
LPPOINT cursorPos = 0;
您正在创建一个名为 cursorPos
的指针并将其设置为 NULL
。呼唤
GetCursorPos(cursorPos);
然后失败,因为 GetCursorPos
期望您提供一个指向要用信息填充的 POINT
的指针,并且您提供了一个 NULL
指针。因此,当你写
square->setPosition(D3DXVECTOR2(cursorPos->x, cursorPos->y)); // -> crash
当您试图读取 x
和 y
时,您正在读取一个 NULL
指针。这会导致未定义的行为,这里是崩溃。在另一种情况下,您还会遇到未定义的行为,而且恰好不会崩溃。
要解决此问题,请尝试声明一个实际的 POINT
对象,如下所示:
POINT cursorPos;
然后调用
GetCursorPos(&cursorPos);
然后读取位置为
square->setPosition(D3DXVECTOR2(cursorPos.x, cursorPos.y));
希望这对您有所帮助!
关于c++ - GetCursorPos 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20939688/
我在使用 GetCursorPos 时遇到问题。我使用 directx 在光标所在的位置绘制一个正方形,但我的代码不起作用,我也不知道为什么... LPPOINT cursorPos = 0; Get
有时我会收到客户的错误报告,但我无法解释。在 Delphi 中的 Application.Run() 之后,我收到以下错误: EOSError: System error: Code:_5 Acce
我在 MSDN forum 上看到了一个帖子32 位与 64 位整数存在问题。我不确定这是否是我的问题,但似乎这段代码应该可以工作,所以我有点困惑。 我在 Windows 7 64 位中以兼容模式 (
在下面的代码中,我想要鼠标光标在屏幕上的位置,但是无论我将光标移动到哪里,我都会从下面的第二个加星号或粗体(不确定)部分(无论光标在哪里)得到相同的输出:-1957298293 343277548。如
当我尝试在 Windows Vista/7 登录屏幕上使用 SetCursorPos 时,返回了 true,这起初让我认为它正在工作。但是,当我调用 GetCursorPos 时,它会给我: -858
到目前为止,我已经成功获取了 x 和 y 坐标。 面板代码内。 POINT cursorPos; GetCursorPos(&cursorPos);
我正在编写一些代码(在 Codelite 中),使用的是 GetCursorPos(),没问题。但是当我想调用 GetPhysicalCursorPos() 时,它说它没有在此范围内声明... 与 S
我正在开发一个涉及远程控制的应用程序。键盘和鼠标状态每秒更新约 100 次,保存在数组中,在 Internet 上发送并复制。需要完美的再现时机。从现在开始,我只编写了键盘部分的代码,实际上它比 Wi
当使用 pywin 的 win32api 时,我得到的光标位置值不正确。我的屏幕分辨率是 1920x1080,但是当我使用 GetCursorPos() 时,我在左上角有 (0,0),在右下角有 (1
当使用 pywin 的 win32api 时,我得到的光标位置值不正确。我的屏幕分辨率是 1920x1080,但是当我使用 GetCursorPos() 时,我在左上角有 (0,0),在右下角有 (1
当使用 pywin 中的 win32api 时,我得到的光标位置值不正确。我的屏幕分辨率是 1920x1080,但是当我使用 GetCursorPos() 时,左上角有 (0,0),右下角有 (153
背景我们正在将基于 PythonOgre 的游戏移植到 Mac,发行商要求鼠标能够离开窗口。在 Windows 上,我们使用 OIS(面向对象输入系统)来实现鼠标控制;也就是说,我们不让 OIS 将鼠
当应用程序在 Server 2008(而非 R2)上运行时,我们发现它有不良行为。这是一个 WinForms 应用程序,无论鼠标在屏幕上的哪个位置,Control.MousePosition 都会返回
在 Qt 中,当我使用 QPixmap::grabWindow(hwnd,x,y,h,w) 函数时,与使用 windows api 函数 GetCursorPos 和 GetWindowRect 的坐
我编写了以下代码来设置键盘光标位置。但得到垃圾。任何线索,我错过了什么? var ffi = require('ffi'); var ref = require('ref'); var Struct
有时我的应用程序会出现以下错误。 通常,当用户离开办公 table 而我的程序处于打开状态时,就会发生这种情况。当他们回来时,出现了这个错误。 TMouse.GetCursorPostion 除了对
我是一名优秀的程序员,十分优秀!