在Java中获取窗口句柄

时间:2017-04-11 10:54:15

标签: java jframe window native handle

我一直在尝试使用以下代码获取JFrame的当前窗口指针:

public class MainClass
{
    private JFrame mainFrame;
    private JPanel controlPanel;

    public static void main(String[] args) {
        JFrame jFrame = new JFrame();
        jFrame.setSize(400,400);
        jFrame.setVisible(true);

        try {
            jFrame.setVisible(true);
            final HWND hwnd = new HWND(Native.getComponentPointer(jFrame));
            System.out.println(hwnd);

        } finally {
            jFrame.dispose();
        }
    }

}

然而,输出的结果始终是原生@ 0x0'。我做错了什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

你在使用Windows或Mac?如果Mac无法获得指针,因为此方法只能从Windows机器获取窗口的指针。