[英]How to set transparent background of JDialog
HY,..
如何設置背景透明並“刪除”近距離操作(標記為紅色)? 我只想出示卡片:-)
謝謝..!
雖然UNDECORATED JFrame透明度沒有問題(myJFrame.setBackground(new Color(0,0,0,0));已經足夠了),但JDialog的工作方式也不行。
然而,我發現以下序列適用於JDialog:
myJDialog.getRootPane ().setOpaque (false);
myJDialog.getContentPane ().setBackground (new Color (0, 0, 0, 0));
myJDialog.setBackground (new Color (0, 0, 0, 0));
A仍然存在,但是我的私有的,簡單的建議是,應該針對UnsupportedOperationException和IllegalComponentStateException嘗試所有對Window擴展器(例如JFrame,JDialog)的setBackground調用。
yourDialog.setUndecorated(true)
應該為標題欄提供技巧。
使框架透明。 您必須使用yourDialog.getRootPane().setOpaque(false)
在根面板上工作。
我按照文章中的說明進行了操作,並且完成了工作並不困難。 :)我現在有了半透明的SplashImage ans About屏幕,顯示PNG圖像並尊重其(復雜)透明度。 真棒。 請注意,要繼續的方法將在JDK 7中稍微改變一下。
只需注意關鍵字之間的區別。 http://download.oracle.com/javase/tutorial/uiswing/misc/trans_shaped_windows.html#6u10
如果這樣的話會很好
yourDialog.setUndecorated(true);
yourDialog.getRootPane().setOpaque(false);
訣竅有效,但它沒有給我。 也許我做錯了什么。
我還注意到使用setContentPane(Component)很重要; 而不是getContentPane.add(Component);
我很高興它現在有效! :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.