gpt4 book ai didi

c++ - 了解哪些显示器在 Windows 10 上具有触控功能

转载 作者:行者123 更新时间:2023-12-04 08:21:02 28 4
gpt4 key购买 nike

我有一个在 Windows 10 上运行的双显示器设置,我的辅助显示器是触摸屏。我可以用 EnumDisplayMonitors 检测到两台显示器并发现存在带有 GetSystemMetrics(SM_DIGITIZER) 的数字化仪.我希望我的应用程序窗口在触摸显示器上打开,但我找不到任何功能告诉我数字化仪“属于”哪个显示器。
在没有解决方案的情况下,我想我可以有一个启动序列,在此期间用户被要求点击触摸屏,然后我的代码可以将窗口移动到相应的监视器。我只是希望它比那更光滑。
有任何想法吗?

最佳答案

GetPointerDevices function给你那个信息。 POINTER_DEVICE_INFO在同一结构中包含监视器句柄和设备指针类型:

typedef struct tagPOINTER_DEVICE_INFO {
DWORD displayOrientation;
HANDLE device;
POINTER_DEVICE_TYPE pointerDeviceType; // can be POINTER_DEVICE_TYPE_TOUCH see below
HMONITOR monitor; // Monitor handle
ULONG startingCursorId;
USHORT maxActiveContacts;
WCHAR productString[POINTER_DEVICE_PRODUCT_STRING_MAX];
} POINTER_DEVICE_INFO;

typedef enum tagPOINTER_DEVICE_TYPE {
POINTER_DEVICE_TYPE_INTEGRATED_PEN,
POINTER_DEVICE_TYPE_EXTERNAL_PEN,
POINTER_DEVICE_TYPE_TOUCH,
POINTER_DEVICE_TYPE_TOUCH_PAD,
POINTER_DEVICE_TYPE_MAX
} POINTER_DEVICE_TYPE;

关于c++ - 了解哪些显示器在 Windows 10 上具有触控功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65500736/

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