news 2026/6/23 21:26:40

Java---小球移动案例(附代码)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java---小球移动案例(附代码)

小球可以上下左右移动

import javax.swing.*; import java.awt.*; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; /** * 演示小球通过键盘进行上下左右的移动,讲解 Java 事件控制 */ 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,300); // 设置大小 // 窗口 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.drawOval(x,y,20, 20); // 把小球放在坐标为(10.10)的位置,大小为宽高各为20 } // 有字符输出时,该方法就会被触发 @Override public void keyTyped(KeyEvent e) { } // 当某个键被按下时,该方法会触发 @Override public void keyPressed(KeyEvent e) { // System.out.println((char)e.getKeyChar() + "被按下..."); // 根据用户按下的不同键,来处理小球移动 // 在 java 中,会给每个键分配一个值(int) ASCII码 if (e.getKeyCode() == KeyEvent.VK_DOWN) { // KeyEvent.VK_DOWN 就是向下的箭头对应的code y++; } else if (e.getKeyCode() == KeyEvent.VK_UP) { y--; } else if (e.getKeyCode() == KeyEvent.VK_LEFT) { x--; } else if (e.getKeyCode() == KeyEvent.VK_RIGHT) { x++; } // 让面板重绘 this.repaint(); } // 当某个键被释放(松开)了,该方法被触发 @Override public void keyReleased(KeyEvent e) { } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/22 19:53:38

分享一个夸克网盘不限速的下载方法-在线免费工具

今天教大家一招能解决夸克网盘限制的在线工具。这个工具也是完全免费使用的。下面让大家看看我用这个工具的下载速度咋样。地址获取:放在这里了,可以直接获取 这个速度还是不错的把。对于平常不怎么下载的用户还是很友好的。下面开始今天的教学 输入我给…

作者头像 李华
网站建设 2026/6/23 8:55:16

1、现代 C++ 挑战:从基础到实战

现代 C++ 挑战:从基础到实战 1. C++ 学习与实践的重要性 C++ 是一种通用编程语言,融合了面向对象、命令式、泛型和函数式编程等多种范式。它以高效著称,在对性能要求极高的应用场景中是首选语言。过去几十年里,C++ 在工业、学术等众多领域广泛应用。不过,C++ 标准文档近…

作者头像 李华
网站建设 2026/6/23 19:48:17

当数据回归遇上暴击流:SVM Adaboost实战手札

基于支持向量机的Adaboost数据回归预测 SVM Adaboost数据回归 利用交叉验证抑制过拟合问题 matlab代码,注:要求 Matlab 2018B 及以上版本 注:采用 Libsvm 工具箱(无需安装,可直接运行),仅支持 W…

作者头像 李华
网站建设 2026/6/23 13:55:30

65、文件管理子系统与网络协议通信概述

文件管理子系统与网络协议通信概述 1. /proc 文件系统的 Joctl 系统调用命令 1.1 Joctl 系统调用命令表 常量 描述 PIOCSTATUS 获取进程状态信息 PIOCSTOP 指示进程停止 PIOCWSTOP 等待进程停止 PIOCRUN 使进程可运行 PIOCGTRACE 获取跟踪信号集 PIOCSTRACE 设…

作者头像 李华
网站建设 2026/6/23 19:06:13

DAY18 机器学习

# 导入必要库(补充回归任务所需库,删除分类模型相关库) import pandas as pd import numpy as np from sklearn.preprocessing import StandardScaler from sklearn.model_selection import train_test_split from sklearn.linear_model impo…

作者头像 李华
网站建设 2026/6/23 19:10:05

jd.item_review获取京东商品评论 及tb.item_review获取taobao商品评论

jd.item_review获取京东商品评论 及tb.item_review获取taobao商品评论 item_review_app 获取京东商品评论原数据 点击获取测试key&secret 请求参数 item_id:商品ID page:页数 sort:排序(默认为默认排序,传new为时间最新排序) is_sku:(默认为全部评论,传true是只看当前…

作者头像 李华