JFrame中添加和设置JPanel的方法实例解析

 更新时间:2018年01月15日 11:08:02   作者:轻雨漫步  
这篇文章主要介绍了JFrame中添加和设置JPanel的方法实例解析,具有一定借鉴价值

Swing 程序用JFrame 对象实现了它们的窗口。JFrame 类是AWT Frame 类的一个子类。它还加入了一些Swing 所独有的特性。与 Frame 的使用十分相似。唯一的区别在于,你不能将组件加入到JFrame中。你可以或者将组件加入到JFrame 的content pane(内容面板) 中,或者提供一个新的content pane(内容面板)。

面板与顶层容器的不同点:面板不能独立存在,必须被添加到其他容器内部(面板可以嵌套)。

  JFrame 有一个 Content Pane,窗口能显示的所有组件都是添加在这个 Content Pane 中。JFrame 提供了两个方法: getContentPane 和 setContentPane 就是用于获取和设置其 Content Pane 的。  

对JFrame添加组件有两种方式:

  1)用 getContentPane ()方法获得JFrame的内容面板,再对其加入组件:frame. getContentPane ().add(childComponent)

  2)建立一个Jpanel或JDesktopPane之类的中间容器,把组件添加到容器中,用setContentPane()方法把该容器置为JFrame的内容面板:

    JPanel contentPane = new JPanel();
    ……//把其它组件添加到Jpanel中;
    frame.setContentPane(contentPane);
    //把contentPane对象设置成为frame的内容面板 

实例程序:

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实例背景设置为蓝绿色 
    JPanel panel = new JPanel(); // 创建一个JPanel的实例 
    panel.setBackground(Color.yellow); // 将JPanel的实例背景设置为黄色 
    JButton button = new JButton("Press me"); 
    panel.add(button); // 将JButton实例添加到JPanel中 
 
    contentPane.add(panel, BorderLayout.SOUTH); // 将JPanel实例添加到JFrame的南侧 
    frame.setSize(300, 200); 
    frame.setVisible(true); 
  } 
} 

截图:

总结

以上就是本文关于JFrame中添加和设置JPanel的方法实例解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

  • 解读java.lang.Character.isLetterOrDigit()的使用方式

    解读java.lang.Character.isLetterOrDigit()的使用方式

    这篇文章主要介绍了解读java.lang.Character.isLetterOrDigit()的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Spring Cloud Alibaba Nacos Config进阶使用

    Spring Cloud Alibaba Nacos Config进阶使用

    这篇文章主要介绍了Spring Cloud Alibaba Nacos Config进阶使用,文中使用企业案例,图文并茂的展示了Nacos Config的使用,感兴趣的小伙伴可以看一看
    2021-08-08
  • SpringBoot整合JdbcTemplate的示例代码

    SpringBoot整合JdbcTemplate的示例代码

    JdbcTemplate是Spring框架自带的对JDBC操作的封装,目的是提供统一的模板方法使对数据库的操作更加方便、友好,效率也不错,这篇文章主要介绍了SpringBoot整合JdbcTemplate,需要的朋友可以参考下
    2022-08-08
  • IDEA 单元测试覆盖技巧分享

    IDEA 单元测试覆盖技巧分享

    这篇文章主要介绍了IDEA 单元测试覆盖技巧分享,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • RabbitMQ实现消费端限流的步骤

    RabbitMQ实现消费端限流的步骤

    消费者端限流的主要目的是控制消费者每次从 RabbitMQ 中获取的消息数量,从而实现消息处理的流量控制,这篇文章主要介绍了RabbitMQ如何实现消费端限流,需要的朋友可以参考下
    2024-03-03
  • IntelliJ IDEA 2021.3 正式发布之支持远程开发、IDE故障排查等多项优化改进

    IntelliJ IDEA 2021.3 正式发布之支持远程开发、IDE故障排查等多项优化改进

    IntelliJ IDEA 2021.3 正式发布:支持远程开发、IDE故障排查等多项优化改进问题,在这个版本中的远程开发还不是一个正式版本,而是BETA版,但通过这个BETA版本,也可以体验IDEA“远程开发”给我们带来的全新体验
    2021-12-12
  • Java基础之面向对象机制(多态、继承)底层实现

    Java基础之面向对象机制(多态、继承)底层实现

    这篇文章主要介绍了Java基础之面向对象机制(多态、继承)底层实现,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • MyBatis-Plus 分页查询的实现示例

    MyBatis-Plus 分页查询的实现示例

    本文主要介绍了MyBatis-Plus 分页查询的实现示例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 如何剔除eureka无效和down状态的问题

    如何剔除eureka无效和down状态的问题

    这篇文章主要介绍了如何剔除eureka无效和down状态的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • springBoot+mybaties后端多层架构的实现示例

    springBoot+mybaties后端多层架构的实现示例

    本文主要介绍了springBoot+mybaties后端多层架构的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07

最新评论