JFrame中添加和設(shè)置JPanel的方法實例解析
Swing 程序用JFrame 對象實現(xiàn)了它們的窗口。JFrame 類是AWT Frame 類的一個子類。它還加入了一些Swing 所獨有的特性。與 Frame 的使用十分相似。唯一的區(qū)別在于,你不能將組件加入到JFrame中。你可以或者將組件加入到JFrame 的content pane(內(nèi)容面板) 中,或者提供一個新的content pane(內(nèi)容面板)。
面板與頂層容器的不同點:面板不能獨立存在,必須被添加到其他容器內(nèi)部(面板可以嵌套)。
JFrame 有一個 Content Pane,窗口能顯示的所有組件都是添加在這個 Content Pane 中。JFrame 提供了兩個方法: getContentPane 和 setContentPane 就是用于獲取和設(shè)置其 Content Pane 的?! ?/p>
對JFrame添加組件有兩種方式:
1)用 getContentPane ()方法獲得JFrame的內(nèi)容面板,再對其加入組件:frame. getContentPane ().add(childComponent)
2)建立一個Jpanel或JDesktopPane之類的中間容器,把組件添加到容器中,用setContentPane()方法把該容器置為JFrame的內(nèi)容面板:
JPanel contentPane = new JPanel(); ……//把其它組件添加到Jpanel中; frame.setContentPane(contentPane); //把contentPane對象設(shè)置成為frame的內(nèi)容面板
實例程序:
import java.awt.*; import javax.swing.*; public class JFrameWithPanel { public static void main(String[] args) { JFrame frame = new JFrame("Frame With Panel"); Container contentPane = frame.getContentPane(); contentPane.setBackground(Color.CYAN); // 將JFrame實例背景設(shè)置為藍(lán)綠色 JPanel panel = new JPanel(); // 創(chuàng)建一個JPanel的實例 panel.setBackground(Color.yellow); // 將JPanel的實例背景設(shè)置為黃色 JButton button = new JButton("Press me"); panel.add(button); // 將JButton實例添加到JPanel中 contentPane.add(panel, BorderLayout.SOUTH); // 將JPanel實例添加到JFrame的南側(cè) frame.setSize(300, 200); frame.setVisible(true); } }
截圖:
總結(jié)
以上就是本文關(guān)于JFrame中添加和設(shè)置JPanel的方法實例解析的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
相關(guān)文章
解讀java.lang.Character.isLetterOrDigit()的使用方式
這篇文章主要介紹了解讀java.lang.Character.isLetterOrDigit()的使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06Spring Cloud Alibaba Nacos Config進(jìn)階使用
這篇文章主要介紹了Spring Cloud Alibaba Nacos Config進(jìn)階使用,文中使用企業(yè)案例,圖文并茂的展示了Nacos Config的使用,感興趣的小伙伴可以看一看2021-08-08IntelliJ?IDEA?2021.3?正式發(fā)布之支持遠(yuǎn)程開發(fā)、IDE故障排查等多項優(yōu)化改進(jìn)
IntelliJ?IDEA?2021.3?正式發(fā)布:支持遠(yuǎn)程開發(fā)、IDE故障排查等多項優(yōu)化改進(jìn)問題,在這個版本中的遠(yuǎn)程開發(fā)還不是一個正式版本,而是BETA版,但通過這個BETA版本,也可以體驗IDEA“遠(yuǎn)程開發(fā)”給我們帶來的全新體驗2021-12-12Java基礎(chǔ)之面向?qū)ο髾C制(多態(tài)、繼承)底層實現(xiàn)
這篇文章主要介紹了Java基礎(chǔ)之面向?qū)ο髾C制(多態(tài)、繼承)底層實現(xiàn),文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)java的小伙伴們有非常好的幫助,需要的朋友可以參考下2021-04-04springBoot+mybaties后端多層架構(gòu)的實現(xiàn)示例
本文主要介紹了springBoot+mybaties后端多層架構(gòu)的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07