2017-04-11 173 views
1

我一直在嘗試使用下面的代碼以獲取一個JFrame當前窗口指針:獲取的窗口句柄在Java中

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」。我究竟做錯了什麼?

謝謝!

+0

問題出在代碼Native.java中。 –

+0

我正在導入'com.sun.jna.Native'。問題是什麼? @SteveSmith – Alisinna

+0

對不起,我認爲這是你自己的代碼。 –

回答

1

你使用的是Windows或Mac?如果Mac沒有辦法獲得指針,因爲這種方法只能從Windows機器獲取窗口的指針。