Java GUI综合运用
2021/12/25 11:08:27
本文主要是介绍Java GUI综合运用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
接下来我们综合运用GUI所学的知识,创建一个窗口,设置好窗口的属性,接着在窗口上添加一个标签,再在标签上添加一个所需的照片,通过对键盘上下左右键的监听,实现通过键盘控制飞机图片上下左右移动的功能
import javax.swing.*; import java.awt.*; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.net.URL; public class Plane1 extends JFrame { private int x = 900; //设置图片的初始坐标位置x,y private int y = 900; public Plane1(){ this.setSize(500,500); //设置窗口的初始大小 this.setLocationRelativeTo(null); //设置窗口位置为居中 this.setTitle("飞机"); //设置窗口的标题为"飞机" this.setBackground(new Color(255,255,255)); //设置窗口的背景颜色为白色 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置窗口的关闭方式 this.setIconImage(new ImageIcon("j20.jpg").getImage()); //设置窗口的图标 JPanel jp1 = new JPanel(null); //new一个面板 jp1.setBackground(Color.white); //设置面板的背景颜色为白色 JLabel jLabel = new JLabel(); //在面板上面设置一个标签 jLabel.setSize(50,85); //设置标签的初始大小 jLabel.setLocation(x,y); //设置标签的初始位置 URL u1 = Plane1.class.getResource("j20.jpg"); //此段为给标签添加一个可以设置图片大小的方法 ImageIcon i1 = new ImageIcon(u1); Image image1 = i1.getImage(); Image sc1 = image1.getScaledInstance(50, 85, Image.SCALE_DEFAULT); ImageIcon imageIcon1 = new ImageIcon(sc1); jLabel.setIcon(imageIcon1); jp1.add(jLabel); //将标签添加到面板上 this.addKeyListener(new KeyAdapter() { //设置键盘的监听方法 @Override public void keyPressed(KeyEvent e) { //重写键盘按压操作keyPressed() if (e.getKeyCode()==KeyEvent.VK_UP){ //按压上键图片上移10个像素 y=y-10; jLabel.setLocation(x,y); } if (e.getKeyCode()==KeyEvent.VK_DOWN){ y=y+10; jLabel.setLocation(x,y); } if (e.getKeyCode()==KeyEvent.VK_LEFT){ x=x-10; jLabel.setLocation(x,y); } if (e.getKeyCode()==KeyEvent.VK_RIGHT){ x=x+10; jLabel.setLocation(x,y); } } }); this.add(jp1); //将面板添加到窗口 this.setVisible(true); //将该语句放在最后一行,设置将面板显示出来 } public static void main(String[] args) { new Plane1(); } }
这篇关于Java GUI综合运用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南