Java Swing之JFrame、JPanel

JFrame窗口容器和JPanel面板容器

Java Swing中,任何一个Swing组件都需要置于一个顶层容器中。JFrame窗口和JPanel面板是常用的顶层容器。JFrame中的顶层容器主要有JFrame、JDialog 和 JApplet。

JFrame(窗口容器)

Java GUI程序基本思路是以JFrame为基础,用来设计类似于Windows系统中窗口形式的界面,它是屏幕上window的对象,能够最大化、最小化、关闭。JFrame是Swing组件的顶层容器,该类继承了AWT的Frame类,支持Swing体系结构的高级GUI属性。

JFrame类的常用构造方法如下:

构造函数描述
JFrame()构造一个初始时不可见的新窗体
JFrame(String title)创建一个具有title指定标题的不可见新窗体
JFrame(GraphicsConfiguration gc)在指定GraphicsConfiguration的屏幕设备和空白标题中创建一个新窗体
JFrame(String title, GraphicsConfiguration gc)创建具有指定标题和指定GraphicsConfiguration屏幕设备的新窗体

JFrame类中的常用方法如下:

构造函数描述
getContentPane()返回此窗体的contentPane对象
getDefaultCloseOperation()返回用户在此窗体上单击“关闭”按钮时执行的操作
setContentPane(Container contentPane)设置contentPane属性
setDefaultCloseOperation(int operation)设置用户在此窗体上单击“关闭”按钮时默认执行的操作
setDefaultLookAndFeelDecorated(boolean defaultLookAndFeelDecorated)设置JFrame窗口使用的Windows外观(如边框、关闭窗口的 小部件、标题等)
setIconImage(Image image)设置要作为此窗口图标显示的图像
setJMenuBar(JMenuBar menubar)设置此窗体的菜单栏
setLayout(LayoutManager manager)设置LayoutManager属性

Example:
1.使用JFrame无参构造方法创建一个窗口:

package com.tianjh.swing;

import javax.swing.*;

/**
 * @author tianjh
 * @date 2021/3/5
 * 使用JFrame创建一个空窗口
 */
public class JFrameDemo {
    public static void main(String[] args) {
        JFrame jFrame = new JFrame();
        // 设置窗口的标题
        jFrame.setTitle("这是由JFrame无参构造创建的窗口");
        // 设置窗口位置及尺寸
        jFrame.setBounds(500, 500, 500, 275);
        // 设置单击“关闭”按钮时退出程序
        jFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        // 设置窗口是否可见,如果设置false或不设置那么窗口将不可见
        jFrame.setVisible(true);
    }
}

运行结果如下:
在这里插入图片描述
2.使用JFrame带参构造方法创建一个窗口:

public class JFrameDemo {
    public static void main(String[] args) {
        // 创建一个带有指定标题的jFrame对象
        JFrame jFrame = new JFrame("这是由JFrame带参构造创建的窗口");

        // 设置窗口位置及尺寸
        jFrame.setBounds(500, 500, 500, 275);
        // 设置单击“关闭”按钮时退出程序
        jFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        // 设置窗口是否可见,如果设置false或不设置那么窗口将不可见
        jFrame.setVisible(true);
    }
}

运行结果如下:
在这里插入图片描述

JPanel(面板容器)

JPanel是Java图形用户界面(GUI)工具包swing中的面板容器类,包含在javax.swing 包中,可以进行嵌套,功能是对窗体中具有相同逻辑功能的组件进行组合,是一种轻量级容器,可以加入到JFrame窗体中。
JPanel类的常用构造方法如下:

构造函数描述
JPanel()使用默认的布局管理器创建新面板,默认的布局管理器为 FlowLayout
JPanel(LayoutManagerLayout layout)创建指定布局管理器的 JPanel 对象

JPanel 类中的常用方法如下:

方法名及返回值类型描述
Component add(Component comp)将指定的组件追加到此容器的尾部
void remove(Component comp)从容器中移除指定的组件
void setFont(Font f)设置容器的字体
void setLayout(LayoutManager mgr)设置容器的布局管理器
void setBackground(Color c)设置组件的背景色

Example:
3.使用JPanel创建一个背景为橘色的面板

package com.tianjh.swing;

import javax.swing.*;
import java.awt.*;

/**
 * @author tianjh
 * @date 2021/3/5
 */
public class JPanelDemo {
    public static void main(String[] args) {
        JFrame jFrame = new JFrame();
        jFrame.setTitle("使用JPanel创建一个背景为橘色的面板");
        // 设置窗口位置及尺寸
        jFrame.setBounds(500,500,500,275);
        // 设置单击“关闭”按钮时退出程序
        jFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        // 创建面板
        JPanel jPanel = new JPanel();
        // 设置面板背景为橘色
        jPanel.setBackground(Color.orange);
        // 将面板添加到jFrame
        jFrame.add(jPanel);
        // 设置窗口是否可见,如果设置false或不设置那么窗口将不可见
        jFrame.setVisible(true);
    }
}

运行结果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值