首页 > 编程语言 >JAVA游戏源码:天天酷跑

JAVA游戏源码:天天酷跑

时间:2024-08-03 21:27:53浏览次数:17  
标签:JAVA java swing 输入框 源码 酷跑 new import javax

学习java朋友们,福利来了,今天小编给大家带来了一款天天酷跑源码。注意:此源码仅供学习使用!!

 

 

 

源码搭建和讲解

启动main入口:

//************************************************************************
// ************完整源码移步: gitee典康姆/hadluo/java_game01.git *********
//************************************************************************

import java.awt.Font;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;

/**
 * 
 * @author Huey
 * @date 2020-11-16
 * 登录界面:用户名输入框  密码输入框  登录取消按钮 功能
 *
 */
public class LoginFrame extends JFrame{
	//用户名变量(文本)
	JLabel userLabel;
	//用户名输入框(文本输入框)
	JTextField userField;
	//密码变量(文本)
	JLabel userLabel2;
	//密码输入框(文本输入框)
	JPasswordField userField2;
	//登录按钮、取消按钮(按钮)
	JButton Login,Cancel;

	public LoginFrame() {//直接 alt / (无参构造)	
		userLabel = new JLabel("用户名");	
		//设置字体
		userLabel.setFont(new Font("微软雅黑",Font.BOLD,18));				
		userLabel2 = new JLabel("密  码");
		userLabel2.setFont(new Font("微软雅黑",Font.BOLD,18));
			
		//布局方式:绝对布局
		userLabel.setBounds(20, 220, 100, 30);//x位置,y位置,所占显示空间的大小
		this.add(userLabel);//将用户名这三个字添加到登录界面上,以下同理
		userLabel2.setBounds(20, 280, 100, 30);
		this.add(userLabel2);

		//用户名输入框
		userField = new JTextField();
		userField.setBounds(80, 220, 100, 30);
		//设置输入框凹陷效果
		userField.setBorder(BorderFactory.createLoweredBevelBorder());
		//设置输入框背景透明
		userField.setOpaque(false);
		this.add(userField);
		
		userField2 = new JPasswordField();
		userField2.setBounds(80, 280, 100, 30);
		userField2.setBorder(BorderFactory.createLoweredBevelBorder());
		userField2.setOpaque(false);
		this.add(userField2);
		
		
		
//登录按钮
		Login = new JButton("登录");
		Login.setBounds(45,350,60,36);
		//Login.setBackground(new Color(44,22,44));//背景色
		//Login.setForeground(Color.BLUE);//前景色		
		//绑定登录按钮的事件监听
		Login.addActionListener(new ActionListener() {//ActionListener alt /
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//System.out.println("点击登录按钮");
				//获取用户名输入框的内容
				String userName = userField.getText();
				String passWord = userField2.getText();//横杠原因:方法太老了,不推荐用
				if("hadluo".equals(userName) && "123".equals(passWord)){
					//登录成功
					JOptionPane.showMessageDialog(null, "欢迎"+userName+"来到天天酷跑游戏");
					//跳转到下一界面
					new MainFrame();
					//关闭当前界面
					dispose();
				}else if("".equals(userName) || "".equals(passWord)){
					//不能为空
					JOptionPane.showMessageDialog(null, "用户名 / 密码不能为空,请重新输入!");
				}else{
					JOptionPane.showMessageDialog(null, "用户名 / 密码输入错误,请重新输入!");
				}
				
			}
		});
		this.add(Login);
		
//取消按钮
		Cancel = new JButton("取消"); 
		Cancel.setBounds(135,350,60,36);
		this.add(Cancel);
		Cancel.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				dispose();
			}
		});
		

		
		//创建背景面板,并添加到窗体上去
		LoginPanel panel = new LoginPanel();
		this.add(panel);	
		
		//设置登录界面的基本属性
		this.setSize(900,530);
		this.setLocationRelativeTo(null);//位置居中
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setUndecorated(true);
		
		//设置窗体的Logo图标
		this.setIconImage(new ImageIcon("Image/115.png").getImage());//存储图片
		this.setVisible(true);
	}
	
	
	
	//测试用的main方法       main + Alt /
	public static void main(String[] args) {
		new LoginFrame();
	}
	
	class LoginPanel extends JPanel{//画板
		//背景图片变量
		Image background;//------ctr shift + o 导包
		public LoginPanel() {//-----alt / 回车 构造方法		在{后双击,显示作用域
			//读取图片文件,赋值给background变量
			try {//-----虽然不大可能,但也做好吃饭噎死的准备
				background = ImageIO.read(new File("Image/login.jpg"));//----read参数为File类型
			} catch (IOException e) {//-------捕获异常信息
				// 打印异常日志信息
				e.printStackTrace();
			}
		}
		//绘制方法
		@Override
		public void paint(Graphics g) {
			super.paint(g);
			//绘制背景图片
			g.drawImage(background, 0, 0,900,530, null);//900,530为宽高
		}
	}
}
//throws ......抛异常,将下面的异常向上抛,交给上级:不建议   

运行工具

代码是一个普通的java工程,我们直接导入到eclipse或者idea就可以运行了。

 

结尾语

我是分享好物+教程+源码 的老罗,欢迎关注,更多精品源码!

标签:JAVA,java,swing,输入框,源码,酷跑,new,import,javax
From: https://www.cnblogs.com/java-bigdata/p/18341129

相关文章

  • 学习Java第五周
    本周学习一、类的继承1.继承特点修饰符classSubClassextendsSuperClass{//类定义部分}表明继承了SuperClass类。注:子类只能从被扩展的父类获得成员变量、方法和内部类(包括内部接口、枚举),不能获得构造器和初始化块。2.Java类只能有一个直接父类,实际上,Java类可以有......
  • Java【案例2-2】 小明都可以买什么
    案例介绍:编写一个智能购物计算小程序,在一家商店有书本、铅笔、橡皮、可乐、零食五种商品,商品价格如下表所示。商品名称价格书本12元铅笔1元橡皮2元可乐3元零食5元假如你带了20元,且必须购买一本书,剩余的钱还可以购买哪种商品,可以购买几件,购买完后又能......
  • 从零开始的JAVAday29~day35
    后续语法if()语法若满足()中的语法,则执行后面的语句。循环for(a;b;c)和while(c)语法for(a;c;b)语法意思为在循环前进行a语句每次循环结束后进行b语法,若满足c语句则再次循环。whlie(c)循环若满足c条件则循环。......
  • (Javaweb)Ajax,Axios,Vue
    目录一.Ajax 二.Axios 三.前端工程化四.接口文档的管理平台YAPI五.Vue项目六.Vue项目开发流程一.Ajax 1.通过Ajax从服务器端获取数据Ajax---JavaScript(网页行为)+XML(标记语言--用来存储数据) 客户端--浏览器 服务端在处理逻辑的时候,客户端处于等待状态等......
  • Java毕业设计基于微信小程序的在线学习和测试系统 Uniapp
    文末获取资源,收藏关注不迷路文章目录项目介绍技术介绍项目界面关键代码目录项目介绍随着信息时代的快速发展,互联网的优势和普及,人们生活水平的不断提高,工作时间的繁忙,使得在线学习平台的开发成为必需。在线学习平台主要是借助计算机,通过对在线学习平台管理所需的信......
  • 学习Java的第五周
    第五周的学习记录来啦!!先说个好消息,历时五周,我终于把B站黑马程序员的Java基础学完了,本周从数组的学习和练习开始,到方法的学习和练习结束,其中数组的两种初始化、地址值、元素的访问和存储、以及最重要的数组的遍历,难度都属实不小,但最难理解的还属方法中的最后一个练习题--拷贝数组,......
  • 基于java+springboot+vue的社区物资交易互助平台
    ......
  • [0384]基于JAVA的入驻企业智慧管理系统的设计与实现
    毕业设计(论文)开题报告表姓名学院专业班级题目基于JAVA的入驻企业智慧管理系统的设计与实现指导老师(一)选题的背景和意义在当前信息化与智能化高速发展的时代背景下,企业运营与管理的高效化、精细化已经成为提升竞争力的关键因素。基于Java的入驻企业......
  • [0380]基于JAVA的党建活动室智慧管理系统的设计与实现
    毕业设计(论文)开题报告表姓名学院专业班级题目基于JAVA的党建活动室智慧管理系统的设计与实现指导老师(一)选题的背景和意义选题背景与意义:在新时代背景下,随着信息技术的飞速发展和国家对党建工作信息化、智能化建设的高度重视,基于智慧化管理系统的党......
  • 基于java+springboot+vue的仓库管理系统
    ......