Java图形化界面简介

        Java 图形化界面(GUI)编程允许开发者创建具有可视化元素和用户交互功能的应用程序。Swing 是 Java 中用于构建图形化界面的一个重要工具包。
         使用 Swing 可以创建各种组件,如窗口(JFrame)、按钮(JButton)、文本框(JTextField)、标签(JLabel)等。通过合理组合和布局这些组件,可以设计出满足不同需求的界面。
        以下是一个使用 Java Swing 创建图形化界面的简单示例代码,展示了如何创建一个带有按钮的窗体。

import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JPanel;

public class SwingExample {
    public static void main(String[] args) {
        // 创建一个顶层容器(窗口)
        JFrame frame = new JFrame("示例窗口"); 
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        frame.setSize(400, 300); 

        // 创建中间容器(面板容器),使用默认的布局管理器
        JPanel panel = new JPanel(); 

        // 创建一个基本组件(按钮),并添加到面板容器中
        JButton button = new JButton("点击我"); 
        panel.add(button);

        // 把面板容器作为窗口的内容面板设置到窗口
        frame.setContentPane(panel); 

        // 设置窗口可见
        frame.setVisible(true); 
    }
}

        上述代码中,首先创建了一个JFrame对象作为窗口。通过setDefaultCloseOperation方法设置了窗口关闭时的默认操作,这里使用JFrame.EXIT_ON_CLOSE表示关闭窗口时setDefaultCloseOperation退出程序。使用setSize方法设置了窗口的大小。
        然后创建了一个JPanel对象作为中间容器,它可以用来添加其他组件。
        接着创建了一个JButton对象作为按钮,并通过add方法将其添加到JPanel中。
        最后,使用setContenPane方法将JPanel设置为窗口的内容面板,并使用setVisible(true)方法使窗口可见。
        这只是一个简单的示例,Swing 还提供了多种布局管理器、其他组件以及事件处理机制等,可以实现更复杂的图形化界面。

        例如,Swing 中常用的布局管理器包括流式布局(FlowLayout)、网格布局(GridLayout)、边界布局(BorderLayout)等。以下是使用流式布局和网格布局的示例代码:

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.FlowLayout;

public class FlowLayoutExample {
    public static void main(String[] args) {
        JFrame frame = new JFrame("流式布局示例");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JPanel panel = new JPanel(new FlowLayout()); // 创建内容面板,指定使用流式布局

        JButton btn01 = new JButton("按钮 01");
        JButton btn02 = new JButton("按钮 02");
        JButton btn03 = new JButton("按钮 03");
        JButton btn04 = new JButton("按钮 04");
        JButton btn05 = new JButton("按钮 05");

        panel.add(btn01);
        panel.add(btn02);
        panel.add(btn03);
        panel.add(btn04);
        panel.add(btn05);

        frame.setContentPane(panel);
        frame.setSize(200, 250);
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    }
}

        在上述代码中,创建了一个使用流式布局的JPanel,组件会按照从左到右、从上到下的顺序排列。

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.GridLayout;

public class GridLayoutExample {
    public static void main(String[] args) {
        // 创建 3 行 3 列的网格布局
        GridLayout layout = new GridLayout(3, 3); 
        JPanel panel = new JPanel(layout); 

        JButton btn01 = new JButton("按钮 01");
        JButton btn02 = new JButton("按钮 02");
        JButton btn03 = new JButton("按钮 03");
        JButton btn04 = new JButton("按钮 04");
        JButton btn05 = new JButton("按钮 05");
        JButton btn06 = new JButton("按钮 06");
        JButton btn07 = new JButton("按钮 07");
        JButton btn08 = new JButton("按钮 08");

        panel.add(btn01);
        panel.add(btn02);
        panel.add(btn03);
        panel.add(btn04);
        panel.add(btn05);
        panel.add(btn06);
        panel.add(btn07);
        panel.add(btn08);

        JFrame frame = new JFrame("网格布局示例");
        frame.setContentPane(panel);
        frame.setSize(200, 250);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    }
}

        在这个示例中,创建了一个 3 行 3 列的网格布局对象,并将其应用于JPanel。然后向JPanel中添加了 8 个按钮,它们会按照网格的形式排列。

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值