subme01 2022-11-01 10:15
浏览 19
已结题

DirectX::Mouse如何在全屏状态下获取鼠标位置

DirectX::Mouse如何在全屏状态下获取鼠标位置
桌面的分辨率为19201080
当程序在1440
900窗口状态下,使用mouseState = pMouse->GetState(),获取的mouseState.x和mouseState.y,获取的鼠标位置是相对窗口左上角的坐标,X和Y值小于1440900
当程序用m_pSwapChain->SetFullscreenState(1, NULL);设置为全屏之后,窗口的分辨率变成1440
900,画面是全屏的,鼠标获取的值变成相对于屏幕左上角的坐标,X和Y的值会大于1440900,变成小于19201080了,导致鼠标获取的值和画面不匹配
请各位帮忙考虑下我这儿是否有什么东西没处理到,先谢谢了!

  • 写回答

1条回答 默认 最新

  • subme01 2022-11-01 10:20
    关注

    DirectX::Mouse如何在全屏状态下获取鼠标位置
    桌面的分辨率为19201080
    当程序在1440900窗口状态下,使用mouseState = pMouse->GetState(),获取的mouseState.x和mouseState.y,获取的鼠标位置是相对窗口左上角的坐标,X和Y的取值范围是0-1439,0-899
    当程序用m_pSwapChain->SetFullscreenState(1, NULL);设置为全屏之后,窗口的分辨率变成1440900,画面是全屏的,鼠标获取的值变成相对于屏幕左上角的坐标,X和Y的值变成0-1919,0-1079了,导致鼠标获取的值和画面不匹配
    请各位帮忙考虑下我这儿是否有什么东西没处理到,先谢谢了!

    评论

报告相同问题?

问题事件

  • 系统已结题 11月9日
  • 创建了问题 11月1日