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