2
我想在Gdk的屏幕上找到指针位置,发现gdk_display_get_pointer()
,它工作正常,但它被标记为已弃用,并且现在指的是gdk_device_get_position()
。如何使用gdk_device_get_position()?
但是我该如何使用这个功能呢?我无法获得GdkDevice
,因为没有工厂,也没有构造函数。
我想在Gdk的屏幕上找到指针位置,发现gdk_display_get_pointer()
,它工作正常,但它被标记为已弃用,并且现在指的是gdk_device_get_position()
。如何使用gdk_device_get_position()?
但是我该如何使用这个功能呢?我无法获得GdkDevice
,因为没有工厂,也没有构造函数。
使用Gdk.DeviceManager。
.....
.....
GdkDisplay *display = gdk_display_get_default();
GdkDeviceManager *device_manager = gdk_display_get_device_manager (display);
GdkDevice *device = gdk_device_manager_get_client_pointer (device_manager);
// do whatever with Gdk.Device, i.e:
int x, y;
gdk_device_get_position (device, NULL, &x, &y);
printf ("x= %d, y=%d", x,y);