jna 使用_使用JNA的透明JFrame
jna 使用
在使JFrame透明中,我展示了一種使用AWTUtilities類使框架透明的方法。 但是使用該類會導致訪問限制編譯時錯誤,該文章中還顯示了Eclipse中的解析。 現在,這里是使用Java本機的版本。 我使用Java本機訪問(JNA)庫來調用本機函數來完成任務。什么是Java本機訪問(JNA) ?
 JNA使Java程序可以輕松訪問本機共享庫(Windows上的DLL),而無需編寫Java代碼-無需JNI或本機代碼。JNA允許您使用自然Java方法調用直接調用本機函數。 
 
 代碼 
 JNA jar(platform.jar)中提供了WindowUtils類。 WindowUtils類的方法setWindowAlpha   用于使窗口透明。 此方法的第一個參數是您的框架/窗口,第二個參數是alpha值。 此類還具有一個稱為setWindowTransparent的方法,該方法還可用于使窗口透明。 
 
 依存關系 
您將需要以下2個jar來運行該程序:(兩個jar文件都可以在GitHub上下載JNA 。)
- jna.jar
 - platform.jar
 
要在Windows上運行以上代碼,您將需要在調用WindowUtils函數之前設置“ sun.java2d.noddraw”系統屬性。
System.setProperty('sun.java2d.noddraw', 'true');輸出量
補充筆記
我已經在以下機器上測試了此代碼:
- Windows XP Service Pack 3(32位)
 - Windows 7(32位)
 - Cent OS 5(32位)
 
如果您在其他計算機上對其進行測試或使用JNA的其他計算機具有相同功能的代碼,請隨時將其作為對此文章的評論進行共享。
祝您編程愉快,別忘了分享!
參考: harryjoy博客上的JCG合作伙伴 Harsh Raval 使用JNA的透明JFrame 。
翻譯自: https://www.javacodegeeks.com/2012/09/transparent-jframe-using-jna.html
jna 使用
總結
以上是生活随笔為你收集整理的jna 使用_使用JNA的透明JFrame的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 多多关照是什么意思 词语多多关照是什么意
 - 下一篇: Guavate:桥接Guava和Java