当前位置: 首页 > news >正文

【java图形化界面编程】

文章目录

  • 一、GUI简介
  • 二、Swing
    • 1.容器组件
    • 2. 布局管理器:BorderLayout
    • 3.代码实现
  • 实验总结:


一、GUI简介

  • GUI:图形用户界面。通过图形用户界面,程序的输入输出可以脱离控制台
  • JAVA中实现GUI主要使用3种技术:AMT,Swing,JavaFX。
    本篇文章我主要讨论Swing实现GUI界面。

二、Swing

1.容器组件

  • JFrame
    JFrame为顶层容器组件,可以放置其他组件。
  • JPanel
    JPanel不是顶层容器,无法单独显示。需要添加某个顶层容器中才可以使用。

2. 布局管理器:BorderLayout

  • BorderLayout将空间划分为了5个区域,每个区域只能添加一个组件,若添加多个只能显示一个。
  • 所以当我们需要在某个区域放置多个组件时,可以先放置JPanel,再在JPanel上放置其他组件。若某个区域没有放置组件,其不会被保留。

3.代码实现

利用各种组件,布局管理器以及事件监听器实现一个GUI。

  1. 代码如下:
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class FirstSwing {

	private static void createAndShowGUI() {
		// Create and set up the window.
		JFrame f1 = new JFrame("界面");
		f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		// your code
		JPanel panel1 = new JPanel(new GridLayout(2, 2));
		JPanel panel2 = new JPanel(new FlowLayout());
		JLabel jlabel1 = new JLabel("QQ");
		JLabel jlabel2 = new JLabel("密码");
		JTextField jtf1 = new JTextField(15);
		JTextField jtf2 = new JTextField(15);
		JButton jbutton1 = new JButton("登录");
		JButton jbutton2 = new JButton("注册");
		panel1.add(jlabel1);
		panel1.add(jtf1);
		panel1.add(jlabel2);
		panel1.add(jtf2);
		panel2.add(jbutton1);
		panel2.add(jbutton2);
		f1.add(panel2, BorderLayout.SOUTH);
		f1.add(panel1, BorderLayout.CENTER);

		// Display the window.
		f1.pack();
		f1.setVisible(true);

		jbutton1.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				String qq = jtf1.getText();
				String password = jtf2.getText();
				if (qq.equals("123") && password.equals("111")) {
					JOptionPane.showMessageDialog(null, "欢迎用户黄羽悦进入系统");
				} else {
					JOptionPane.showMessageDialog(null, "用户名密码错误");
				}
			}
		});
	}

	public static void main(String[] args) {
		javax.swing.SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				createAndShowGUI();
			}
		});
	}
}


  1. 运行结果
    在这里插入图片描述

实验总结:

经过本次实验,我了解了如何使用Swing实现GUI界面。
程序解释:
本次实验我将整个窗体界面分成两部分:分别对应BorderLayout的centre与south。
在布局layout上分别放入两个JLable与JTextField。
在layout的south放入一个JPanel,然后在该面板上放置两个按钮。
在按钮一上注册了事件监听器,在点击登录按钮后,如用户名、密码相同则提示“欢迎用户HYY进入系统!”
在这里插入图片描述
否则提示“用户名密码错误!
在这里插入图片描述
综上所述,对于GUI程序的一般编程步骤为:

  1. 创建窗体;
  2. 设置布局管理器;
  3. 在窗体上添加组件;
  4. 显示窗体;

相关文章:

  • 网易运维面试题及参考答案
  • 【天梯赛】L2_005 集合相似度(C++)
  • Apache Kafka全栈技术解析
  • STM32——DMA
  • 从火险预测到智能指挥,地理信息系统的“硬核”突围
  • AI重构农业:从“面朝黄土“到“数字原野“的产业跃迁—读中共中央 国务院印发《加快建设农业强国规划(2024-2035年)》
  • InnoDB存储引擎的三大特性
  • 数字身份DID协议:如何用Solidity编写去中心化身份合约
  • 使用typedef和不使用的区别
  • PyTorch教程:如何读写张量与模型参数
  • 【科普】 探秘图像评价指标的奇妙世界
  • 可发1区的超级创新思路(python 实现):一种轻量化的动态稀疏门控网络
  • forms实现地铁跑酷小游戏
  • Spring的简单介绍
  • C++ std::shared_mutex
  • 汽车与航空航天领域软件维护:深度剖析与未来展望
  • SSH远程工具
  • C语言传参寄存器压栈流程总结
  • 洛谷 P1330 封锁阳光大学
  • C++11:lambda表达式
  • 响应式自适应网站/云南疫情最新消息
  • 平阳县建设局网站/优化大师的优化项目有哪7个
  • 网站建设费用怎么入账/建网站的流程
  • 文化馆网站建设/今日新闻热点10条
  • 北京市住房与城乡建设委员会网站/怎么查询搜索关键词
  • 手机网站建设与布局/武汉网站seo