我們如何使用Java Swing在主JFrame內部創建一個帶有背景圖像的主JFrame和一個JFrame?如何在JFrame中創建JFrame?
1
A
回答
2
我相信你正在尋找internal frames。
對於背景圖像位,子類JPanel覆蓋其paintComponent()方法,並在此處將圖像曝光。然後將該面板的一個實例設置爲JFrame的內容窗格。
public class BackgroundPanel extends JPanel {
private BufferedImage bgImg;
public BackgroundPanel() {
try {
bgImg = ImageIO.read(BackgroundPanel.class.getResourceAsStream(
"mybackgroundimage.png"));
} catch (IOException ex) {
System.err.println("Could not load background image!");
ex.printStackTrace();
}
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
if (bgImg != null) {
g.drawImage(bgImg, 0, 0, null);
}
}
}
public class MyJFrame extends JFrame {
public MyJFrame() {
setContentPane(new BackgroundPanel());
}
}
1
基於我的理解,您不需要在另一個JFrame中嵌套JFrame,我也不認爲這樣做也是好設計。你可以做的是嵌套JPanels。
您將主要需要了解這兩個類:
2
這是很難知道你與意義
a JFrame主JFrame內
請仔細閱讀關於JFrame究竟是什麼。也許你想在你的應用程序中使用dialog window,或者使用internal window。或者也許只是另一個panel。
要獲取JFrame中的背景圖像,我建議您只需將一個JPanel with a backround image添加到JFrame的內容窗格中。
相關問題
- 1. 如何創建JFrame數組?
- 2. 如何在Jframe中創建一個JPanel?
- 3. 創建JFrame
- 4. 在JFrame中創建對象
- 5. 從JFrame創建JFrame時出錯
- 6. 如何在創建時繪製JFrame?
- 7. 如何在旁邊創建一個JFrame?
- 8. 如何在JFrame中
- 9. 如何在JFrame中
- 10. 如何刷新Jframe以創建動畫?
- 11. 在實例對象中創建JFrame
- 12. 在JFrame中創建活動計數器
- 13. 爲JFrame創建滾動條
- 14. 從java插件創建JFrame
- 15. 使用JFrame創建動畫
- 16. Java的如何在JFrame中
- 17. JFrame內的JFrame
- 18. jframe actionperformed jframe
- 19. JFrame + JDialog的JFrame
- 20. javaw.exe在創建JFrame時崩潰
- 21. Netbeans在創建後關閉JFrame
- 22. 如何在打開JFrame的Java Applet中創建按鈕?
- 23. 如何在Java applet中創建JFrame或反之亦然
- 24. 如何在按鈕下的JFrame中創建計數器?
- 25. 如何在Java中創建JLabel數組以打印到JFrame
- 26. 在另一個JFrame中調用JFrame
- 27. 在JFrame中
- 28. JCommandButton在JFrame中
- 29. 如何通過其他Jframe在一個Jframe中訪問JinternlFrme?
- 30. 如何鎖定JFrame?
我有一個[飲水問題(http://i51.photobucket.com/albums/f380/allelse/anythingelse/airplane1213112.jpg) – 2010-04-26 21:27:03
笑樂趣,但無奈:) – Eddinho 2010-04-26 21:35:24
我想你的意思是無益的: P – 2010-04-26 21:55:33