Java游戏源码:天天酷跑+大学生学习源码

news/2025/1/18 19:44:10/文章来源:https://www.cnblogs.com/hadluo/p/18678768

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

image.png

视频演示

https://githubs.xyz/show/209.mp4

源码搭建和讲解

代码采用原生java类库编写, 利用java swing作为界面框架,完整源码获取地址:

gitee.com/hadluo/java_game01.git

启动main入口:

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;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 /
            @Overridepublic 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() {@Overridepublic 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();}}//绘制方法
        @Overridepublic void paint(Graphics g) {super.paint(g);//绘制背景图片g.drawImage(background, 0, 0,900,530, null);//900,530为宽高
        }}
}
//throws ......抛异常,将下面的异常向上抛,交给上级:不建议   

 

运行工具

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

结尾语

源码仅供学习。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/871395.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024春秋杯冬季赛day2writeup_cyi

2024春秋杯冬季赛day2 misc wp 解题过程 misc Weevils Whisper 操作内容: 筛选http流,一开始就把马上传了搜索可知这是weevely的webshell 这篇讲的很详细了 https://xz.aliyun.com/t/11246?time__1311=Cq0xRD0Q0QD%3DdGNeeeqk75YitmczLbD#toc-5 拿了这篇的解密脚本 https:/…

长期更新IntelliJ IDEA安装永久破解教程

IntelliJ IDEA版本亲测IntelliJ IDEA 2024.3.2 ✔ IntelliJ IDEA 2024.3.1 ✔ IntelliJ IDEA 2024.2.* ✔ 介绍 JetBrains是一家专注于创建智能开发工具的前沿软件公司, 旗下常用的软件有IntelliJ IDEA、PhpStorm、PyCharm、Rider、RubyMine、RustRover、WebStorm、Goland、CLi…

5k之力!!!

卡了不知道多少页...(

长期更新IDEA安装永久破解教程

IntelliJ IDEA版本亲测Version 2024.3.2 ✔ Version 2024.3.1 ✔ Version 2024.2.* ✔ 介绍 JetBrains是一家专注于创建智能开发工具的前沿软件公司, 旗下常用的软件有IntelliJ IDEA、PhpStorm、PyCharm、Rider、RubyMine、RustRover、WebStorm、Goland、CLion等。 IntelliJ ID…

windows hyper-v 虚拟机 虚拟磁盘链无法访问 父级虚拟硬盘的标识符和差异磁盘的标识符不匹配 解决方法

参考链接:修复链断裂的虚拟磁盘 - 知乎 报错信息:试了很多方法没有找到合适的方案, 上图中的编辑按钮是灰色,解决方法,点击浏览,随便选一个可选项,选中后,编辑按钮就可用了 然后点击浏览,再把原来的虚拟硬盘重新选回来,这时候,你会发现编辑已经可用了,这个是有点气…

hadoop--mapreduce--Slider

https://incubator.apache.org/projects/slider.html

python 的版本、依赖包、虚拟环境管理

如何对 python 进行版本,依赖包的管理我并不是 python 开发者,但突然对这个话题感兴趣,所以就和 AI 聊了起来,以下是一些聊天笔记。 注意,这里可能有部分内容是过时或者错误的,以官方文档或者实际效果为准。在电脑上安装 python 之后,就可以直接在控制台执行 python 脚本…

How Far Are We to GPT-4V? Closing the Gap to Commercial Multimodal Models with Open-Source Suites

InternVL1.5: 更强的视觉编码器,动态处理高分辨率图像,高质量的双语数据集。主要内容 对标商业模型,提出InternVL1.5。更强的视觉编码器(InternViT-6B),动态处理高分辨率图像(将图像分成448*448的tails,最高支持4K分辨率),高质量的双语数据集(显著提高了OCR和中文相…

在ByteTrack中使用DanceTrack数据集

从github下载DanceTrack项目(不包含数据集,数据集需要单独下载) git clone https://github.com/DanceTrack/DanceTrack.git修改convert_dance_to_coco.py中数据集的位置,然后运行,将数据集格式转化为coco格式将DanceTrack中ByteTrack中的相关文件拷贝到ByteTrack项目中 Danc…

EdgeRunner

WSL2配置代理 - Sherioc - 博客园 EdgeRunner论文解读环境配置显示报错是FlashAttention需要CUDA 11.7及以上版本。 之前FriNet是CUDA 11.1,重新装了CUDA 11.8(并且已经改好设置),但是还是构建失败。 2025/1/18,又能构建了……(very slow)代码 首先注意到了License 1、l…

1月15日证书来啦!工信部人才交流中心PostgreSQL中级/高级认证

恭喜在2024年11月参加工信部人才交流中心PostgreSQL管理员PG中级和PG高级认证考试的各位同学,之前已经能够查到电子版的证书,现在纸质版证书也到啦! 部分学员电子证书:部分学员纸质证书:............ 为什么选择工信人才PostgreSQL认证: 发证机构:工信部人才交流中心属于…

「NOIP2024」 树上查询

update 2024/12/28 题目描述 给定一棵树,每次询问区间 \([l,r]\) 的 \[\max_{l \le l \le r \le r \land r - l + 1 \ge k}\text{dep}_ {\text{LCA*}(l, r)} \]引理证明 先来证两个区间 \(\text{LCA}\) 的引理: 对于 \(\text{LCA} \{ l, l + 1, \dots r\}\) 我们有 \(\text{L…