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è)置為藍綠色
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)文章
關(guān)于重寫equals()方法和hashCode()方法及其簡單的應(yīng)用
這篇文章主要介紹了關(guān)于重寫equals()方法和hashCode()方法及其簡單的應(yīng)用,網(wǎng)上的知識有些可能是錯誤的,關(guān)于?equals()?方法的理解,大家討論不一樣,需要的朋友可以參考下2023-04-04
解釋為什么Java中“1000==1000”為false而”100==100“為true
在日常編程中,我們經(jīng)常遇到一些看似簡單卻隱藏著復(fù)雜邏輯的問題,這篇文章主要介紹了解釋為什么Java中“1000==1000”為false而”100==100“為true,需要的朋友可以參考下2024-01-01
Mybatis Generator Plugin悲觀鎖實現(xiàn)示例
本文將從悲觀鎖為例,讓你快速了解如何實現(xiàn)Mybatis Generator Plugin。文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09
Springboot中配置Mail和普通mail的實現(xiàn)方式
這篇文章主要介紹了Springboot中配置Mail和普通mail的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03
Eclipse 使用Maven構(gòu)建SpringMVC項目
本文主要介紹在Eclipse下創(chuàng)建Maven項目構(gòu)建SpringMVC框架的過程,講解的比較詳細,需要的朋友可以參考下。2016-06-06
SpringBoot設(shè)置動態(tài)定時任務(wù)的方法詳解
這篇文章主要為大家詳細介紹了SpringBoot設(shè)置動態(tài)定時任務(wù)的方法,文中的示例代碼講解詳細,對我們學(xué)習(xí)有一定的參考價值,需要的可以參考一下2022-06-06
SpringBoot定制JSON響應(yīng)數(shù)據(jù)返回的示例代碼
@JsonView 是 Jackson 庫中的一個注解,它允許你定義哪些屬性應(yīng)該被序列化到 JSON 中,基于不同的“視圖”或“配置”,在本文中,通過了解@JsonView,你將能夠更好地掌握如何在Spring Boot應(yīng)用中定制JSON數(shù)據(jù)的輸出,需要的朋友可以參考下2024-05-05
Mybatis 動態(tài)SQL搭建環(huán)境的全過程
這篇文章主要給大家介紹了關(guān)于Mybatis動態(tài)SQL搭建環(huán)境的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05

