如何在Gtkmm中获取光标位置?

3
哪些Gtkmm函数可以帮助我获取光标的位置(x,y)?根据这个,C#有:

Gdk.Display.Default.WarpPointer(Gdk.Display.DefaultScreen, 20, 20);

Windows有:

GetCursorPos

Qt有:

QCursor::pos()

那么Gtkmm有什么呢?

请查看以下 Stack Overflow 问题:https://stackoverflow.com/questions/44595045/catch-mouse-motion-in-gtkmm - ZF007
可能是catch mouse motion in gtkmm的重复问题。 - ZF007
2
@ZF007,你提到的重复项并没有返回 x 和 y 坐标。 - Devab LLC
1个回答

1

在这里。

#include <stdio.h>
#include <gtkmm.h>

int main(int argc, char* argv[]) {
    Gtk::Main gtkm(argc, argv);
    Glib::RefPtr<Gdk::Display> disp = Gdk::Display::get_default();
    Glib::RefPtr<Gdk::Screen> scrn = disp->get_default_screen();
    Gdk::ModifierType mods;
    int xpos, ypos;

    disp->get_pointer(scrn, xpos, ypos, mods);
    printf("xpos = %d, ypos = %d\n", xpos, ypos);
    return 0;
}

我认为这个答案现在已经过时了,这一个对我有用。 - Emmanuel Touzery
谁知道呢..我猜今天仍然有人在使用旧的gtk版本编写新代码吗? - Emmanuel Touzery

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接