我的编程空间,编程开发者的网络收藏夹
学习永远不晚

JAVA SWING

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

JAVA SWING

文章目录


前言

最近在写一个java的小项目,用到了Java swing的技术,本篇博客对Java swing作ava平台的用户界面(UI)工具包。它提供了一组图形用户界面(GUI)组件,例如按钮、文本框、标签等,以及布局管理器,用于创建基于桌面的应用程序。在本篇博客中,我将介绍JavaSwing的基本概念和用法。


一、Java swing概述?

Swing是Java平台的一部分,它的主要目的是提供一个跨平台的用户界面工具包。Swing提供了一组GUI组件和布局管理器,用于构建桌面应用程序。Swing的设计目标是让开发人员能够轻松地创建具有丰富用户界面的应用程序,并且这些应用程序可以在不同的操作系统上运行。

Swing是基于Java AWT(抽象窗口工具包)构建的。AWT是Java平台的另一个用户界面工具包,但它的主要问题是不跨平台。Swing通过提供一组跨平台的GUI组件和布局管理器来解决这个问题。

二、Java swing 的组件

Swing提供了许多GUI组件,包括标签、按钮、文本框、下拉列表、表格等。这些组件都是从JComponent类继承而来的。JComponent类是Swing组件的基类,它提供了一些通用的方法和属性,例如事件处理和边框。

下面是一些常用的Swing组件:

  • JLabel:用于显示文本或图像。
//显示文本JLabel label = new JLabel("Hello, World!");
  • JButton:用于触发动作事件。
JButton button = new JButton("Click me!");button.addActionListener(new ActionListener() {    public void actionPerformed(ActionEvent e) {        // 处理按钮点击事件的代码    }});
  • JTextField:用于输入文本。
JTextField textField = new JTextField(20);textField.addActionListener(new ActionListener() {    public void actionPerformed(ActionEvent e) {        // 处理文本框的回车事件的代码        String text = textField.getText();        // 处理文本框输入的代码    }});
  • JPasswordField:用于输入密码。
passwordField.addActionListener(new ActionListener() {    public void actionPerformed(ActionEvent e) {        char[] password = passwordField.getPassword();        String passwordString = new String(password);        // 处理密码输入完成后的事件的代码    }});
  • JComboBox:用于显示下拉列表。
String[] options = {"Option 1", "Option 2", "Option 3"};JComboBox<String> comboBox = new JComboBox<>(options);comboBox.addActionListener(new ActionListener() {    public void actionPerformed(ActionEvent e) {        String selectedOption = (String) comboBox.getSelectedItem();        // 处理下拉框选项改变事件的代码    }});
  • JTable:用于显示表格数据。

三、Java swing 的布局管理器

Swing提供了各种布局管理器,用于管理组件的位置和大小。布局管理器可以帮助我们在不同的平台上创建具有相同外观的应用程序。

下面是一些常用的布局管理器:

  • FlowLayout:按照组件的添加顺序在容器中排列组件。
  • BorderLayout:将容器划分为5个区域:北、南、东、西和中心。每个区域只能包含一个组件。
  • GridLayout:将容器划分为网格,在每个网格中放置一个组件。
  • GridBagLayout:将容器划分为网格,并且可以更灵活地控制每个组件的大小和位置。

四、Java swing 的事件处理

Swing使用事件驱动模型来处理用户输入事件。当用户与Swing组件交互时,Swing将生成相应的事件,并将其传递给事件处理程序。事件处理程序可以是一个方法、一个内部类或一个独立的对象。

下面是一些常用的Swing事件:

  • ActionEvent:当用户单击按钮或菜单项时触发。
  • KeyEvent:当用户按下或释放键盘上的键时触发。
  • MouseEvent:当用户单击、按下或释放鼠标按钮时触发。
  • WindowEvent:当窗口打开、关闭或失去焦点时触发。

五、Java swing 的示例代码

 下面是一个小球移动的案例:
package com.hspedu.event;import javax.swing.*;import java.awt.*;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import java.security.Key;public class BallMove extends JFrame{//窗口    MyPanel mp = null;    public static void main(String[] args) {        BallMove ballMove = new BallMove();    }    public BallMove(){        mp = new MyPanel();        this.add(mp);        this.setSize(400,400);        //窗口JFrame对像可以监听键盘事件        this.addKeyListener(mp);        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        this.setVisible(true);    }}//画板,KeyListener监听键盘事件class MyPanel extends JPanel implements KeyListener {    //为了让小球可以移动,把他的左上坐标设置成变量    int x=10;    int y=10;    @Override    public void paint(Graphics g) {        super.paint(g);        g.fillOval(x,y,20,20);//默认黑色    }    //有字符输入时,该方法就会触发    @Override    public void keyTyped(KeyEvent e) {    }    //当某个键按下时    @Override    public void keyPressed(KeyEvent e) {        System.out.println((char)e.getKeyCode()+"被按下。。。");        //根据用户按下的不同键来处理小球的移动        if (e.getKeyCode() == KeyEvent.VK_DOWN){ //KeyEvent.VK_DOWN对应向下的箭头,Java中会给每一个值分配对应的(int)值            y++;        }else if(e.getKeyCode() == KeyEvent.VK_UP){//向上的箭头            y--;        }else if(e.getKeyCode() == KeyEvent.VK_RIGHT){//右箭头            x++;        }else if(e.getKeyCode() == KeyEvent.VK_LEFT){//左箭头            x--;        }        //重绘        this.repaint();    }    //当某个键释放    @Override    public void keyReleased(KeyEvent e) {    }}

效果图:
通过上下左右键我们可以操作小球移动。这时候想,假如我把小球换成坦克,在画板上设置其它的坦克,再设置一些不可通过的障碍,这样,童年游戏坦克大战的雏形是不是就出来了?
在这里插入图片描述


总结

Java Swing是Java平台的一个强大的GUI工具包,它提供了一组跨平台的GUI组件和布局管理器,以及事件处理机制。通过使用Swing,我们可以轻松地创建具有丰富用户界面的桌面应用程序。

来源地址:https://blog.csdn.net/a545__27/article/details/131583179

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

JAVA SWING

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

2023-09-18

什么是java swing

Java Swing是一组用于开发图形用户界面(GUI)的Java类库。它提供了一套丰富的组件,如按钮、文本框、下拉框、菜单等,用于创建交互式的窗口应用程序。Java Swing提供了跨平台的能力,可以在不同操作系统上运行,并具有高度可定制
2023-08-25

Java swing是什么

这篇文章主要介绍“Java swing是什么”,在日常操作中,相信很多人在Java swing是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java swing是什么”的疑惑有所帮助!接下来,请跟着小编
2023-06-02

什么是java swing?

Swing是一个用于开发Java应用程序用户界面的开发工具包(GUI工具包),是JAVA基础类的一部分;它包括了图形用户界面(GUI)器件,如:文本框,按钮,分隔窗格和表。Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一
什么是java swing?
2018-07-31

java swing组件怎么用

Java Swing组件是一种用于创建图形用户界面(GUI)的工具包。下面是一些常用的Swing组件的使用方法:JFrame:JFrame是一个顶级容器,用于创建一个窗口。可以使用构造函数创建一个JFrame对象,并设置其属性,然后使用se
2023-10-27

java怎么导入swing包

要在Java中导入Swing包,可以按照以下步骤操作:1. 在你的Java代码中添加以下导入语句:```javaimport javax.swing.*;```2. 确保你的Java开发环境(如Eclipse、IntelliJ IDEA等)
java怎么导入swing包
2024-02-29

java swing用来做什么

Java Swing 是一个用于构建图形用户界面(GUI)的Java库。它提供了丰富的组件和工具,使开发人员能够创建交互式和可视化的窗口应用程序。Java Swing 主要用于以下几个方面:1. 创建窗口应用程序:使用 Swing,开发人员
2023-08-26

java swing有哪些优缺点

Java Swing是Java平台上的一个GUI工具包,具有以下优点和缺点。优点:1. 跨平台性:Java Swing可以在不同的操作系统上运行,保持相同的用户界面和功能。2. 定制性强:Swing提供了许多自定义组件和布局管理器,可以根据
2023-08-25

java swing怎么改变控件值

要改变Java Swing控件的值,可以使用以下方法:1. 使用相应控件的setter方法:每个Swing控件都有相应的setter方法来设置其值。例如,对于JLabel控件,可以使用setText()方法来设置文本值;对于JTextFie
2023-09-25

java中swing的用法有哪些

在Java中,Swing是一个图形用户界面(GUI)工具包,用于创建窗口、按钮、文本框等GUI组件。以下是一些常见的Swing用法:1. 创建一个基本的窗口:```javaimport javax.swing.*;public class
2023-09-25

Java swing五子棋的实现方法

今天给大家介绍一下如何用Java swing实现五子棋的开发即用Java开发图形界面程序五子棋,代码由于太多,只贴部分,最下面会附上下载地址,废话不多说,下面我们先看一下运行结果: 接下来我们看代码:首先是创建主frame框架界面:pack
2023-05-31

java swing常用布局有哪些

Java Swing常用的布局有以下几种:1. BorderLayout(边界布局):将容器分为东、西、南、北和中五个区域,可以将组件放置在不同的区域中。2. FlowLayout(流布局):组件按照添加的顺序从左到右逐行排列,当一行放不下
2023-09-25

Java Swing图形化编程的概述

学习Java Swing图形化编程,我们首先要了解三个最基本的概念:顶层容器,控件,布局。 下面就来介绍一下这三个基本概念 1.顶层容器 什么是顶层容器?当我们使用Java进行图形编程的时候,图在哪里绘制呢?我们需要一个能够提供图形绘制的容
2023-06-03

java中如何用swing组件窗口

要使用Swing组件创建窗口,首先需要导入Swing包,然后创建一个继承自JFrame的类,并在类的构造函数中初始化窗口的属性和组件。下面是一个简单的例子:```javaimport javax.swing.JFrame;import ja
2023-10-11

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录