当前位置: 首页 > news >正文

java的第一个游戏界面

看视频02_大鱼吃小鱼_添加背景图_尚学堂_哔哩哔哩_bilibili

学习方法:

就对的视频小代码,书籍没有,遇到不懂的问ai

今日成果,

界面代码

package new_gameobj;import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;import javax.swing.JFrame;
import javax.swing.WindowConstants;import game_utile.game_pic;public class window extends JFrame {int width=1440;int height=900;public void launch() {this.setVisible(true);this.setSize(width,height);this.setLocationRelativeTo(null);//如果setLocationRelativeTo的参数是null,//则窗口会相对于整个屏幕居中显示。如果参数是一个特定的组件
//		this.setResizable(false);//设置可调解大小的this.setTitle("这是一个长久项目");this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);/** DO_NOTHING_ON_CLOSE:当用户试图关闭窗口时,不执行任何操作。这通常用于在关闭窗口之前需要确认的情况。
HIDE_ON_CLOSE:当用户试图关闭窗口时,只隐藏窗口,但不会终止程序。这是 JFrame 的默认操作。
DISPOSE_ON_CLOSE:当用户试图关闭窗口时,会释放窗口的资源并隐藏窗口。如果所有窗口都被dispose,程序将结束。
EXIT_ON_CLOSE:当用户试图关闭窗口时,会退出应用程序。这通常用于程序的主窗口。*/}@Overridepublic void paint(Graphics g) {super.paint(g);// 调用父类的paint方法来确保其他组件也被绘制// 确保图像已经被加载// 正确的方式是使用静态变量try {g.drawImage(game_pic.bgimgage,0,0,null);} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}
}/** 在Java Swing中,paint 方法通常不需要手动调用,因为它是自动调用的。当你创建一个窗口(例如 JFrame)并设置为可见时,Swing 的绘图系统会在必要时调用 paint 方法来绘制组件。在你提供的代码中,paint 方法被覆盖了,这意味着当Swing框架决定需要重绘窗口时(例如,窗口首次显示、窗口大小改变、窗口被遮挡后又重新显示等),它会自动调用这个方法。*/public static void main(String[] args) {window gamewine=new window();gamewine.launch();}}

加载图片代码

package game_utile;
import java.awt.*;
import java.net.URL;
public class game_pic {public static Image bgimgage=Toolkit.getDefaultToolkit().createImage("/D:/programing/javaide/new_game/bin/game_utile/sea.png");
}
/*

问题纠结,

在用图片时建议直接用绝对地址算了

学习知识

@Override

public void paint(Graphics g) {

super.paint(g);

// 调用父类的paint方法来确保其他组件也被绘制

// 确保图像已经被加载

// 正确的方式是使用静态变量

try {

g.drawImage(game_pic.bgimgage,0,0,null);

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

在随便移动窗口,paint方法会自动调用,因为类是继承了jframe,然后,里面是有方法会自动的,还用

// 调用父类的paint方法来确保其他组件也被绘制

// 确保图像已经被加载

// 正确的方式是使用静态变量

try {

g.drawImage(game_pic.bgimgage,0,0,null);

相关文章:

java的第一个游戏界面

看视频02_大鱼吃小鱼_添加背景图_尚学堂_哔哩哔哩_bilibili 学习方法: 就对的视频小代码,书籍没有,遇到不懂的问ai 今日成果, 界面代码 package new_gameobj;import java.awt.Graphics; import java.awt.Image; import java.…...

【AIGC】ChatGPT提示词Prompt高效编写模式:Self-ask Prompt、ReACT与Reflexion

博客主页: [小ᶻZ࿆] 本文专栏: AIGC | ChatGPT 文章目录 💯前言💯自我提问 (Self-ask Prompt)如何工作应用实例优势结论 💯协同思考和动作 (ReACT)如何工作应用实例优势结论 💯失败后自我反思 (Reflexion)如何工作…...

android studio无法下载依赖包问题

新建Flutter项目Android项目后,点击运行出现报错! error.png 这是镜像站点无法访问造成的!只需要修改为国内可访问的站点即可。 第一步:修改项目Android目录下的build.gradle buildscript { ext.kotlin_version 1.3.50 repositorie…...

SQL入门

一、SQL 语言概述 数据库就是指数据存储的库,作用就是组织数据并存储数据,数据库如按照:库 -> 表 -> 数据三个层级进行数据组织,而 SQL 语言,就是一种对数据库、数据进行操作、管理、查询的工具,通过…...

Java中的Math类

关于Math类的介绍,这是一个在Java和其他许多编程语言中常见的内置库或模块,主要用于提供各种数学运算的方法。在Java中,Math类位于java.lang包下,它包含大量静态方法执行基本的数学函数,如三角函数、指数函数、对数函数…...

大厂常问iOS面试题–Runloop篇

大厂常问iOS面试题–Runloop篇 一.RunLoop概念 RunLoop顾名思义就是可以一直循环(loop)运行(run)的机制。这种机制通常称为“消息循环机制” NSRunLoop和CFRunLoopRef就是实现“消息循环机制”的对象。其实NSRunLoop本质是由CFRunLoopRef封装的,提供了面向对象的AP…...

【解决】mac报错“zsh: command not found: nvm”

问题描述: 安装nodejs时要先安装nvm,按照网上教程安装之后出现以下异常情况: 1.终端运行npm -v能查到版本,idea运行同样命令提示没找到,像是没安装一样 2.终端关闭重新打开之后,也像是没安装一样,需要重…...

MySQL同步到ES的方案选型

文章目录 1. 同步双写优点缺点实现方式 2. 异步双写优点缺点实现方式 3. 另起应用 SQL 查询写入优点缺点实现方式 4. Binlog 实时同步优点缺点实现方式 5. 应用场景 本文参考: https://www.bilibili.com/video/BV13hvZeaErr/?vd_sourceb7e4d17fd13ffa91c4da6d37c08a6c7c 最近在…...

Transformer 与 CNN的对比

Transformer 相比于 CNN 的优点主要体现在以下几个方面: Transformer 相比 CNN 的优点: 全局依赖建模能力:Transformer 的核心机制是 自注意力机制,它可以直接建模输入序列中任意两个位置之间的依赖关系,无论它们之间的距离有多远。 相比之下,CNN 更擅长处理局部信息,它…...

Maven入门到进阶:构建、依赖与插件管理详解

文章目录 一、Maven介绍1、什么是Maven2、Maven的核心功能 二、Maven核心概念1、坐标GAVP1.1、GroupId1.2、ArtifactId1.3、Version1.3.1、版本号的组成 1.4、Packaging 2、POM、父POM和超级POM2.1、POM (Project Object Model)2.1、父POM(Parent POM)2.…...

炒股VS炒游戏装备,哪个更好做

这个项目,赚个10%都是要被嫌弃的 虽然天天都在抒发自己对股市的看法,但自己自始至终也没有买进任何一支股票。之所以对这个话题感兴趣,着实是因为手上的游戏搬砖项目也是国际性买卖,跟国际形势,国际汇率挂钩&#xff0…...

AI图像处理工具:开发者高阶用法与最佳实践

引言 随着人工智能技术的迅猛发展,AI图像处理工具正日益成为开发者工作流程中不可或缺的一部分。这些工具不仅能有效处理图像,还能通过深度学习模型实现复杂的图像理解和生成任务。本文将深入探讨开发者在使用AI图像处理工具时的高阶用法,提…...

Spring Boot 2.6=>2.7 升级整理

版本变更: 1、SpringBootTest 属性源优先级:使用 SpringBootTest 注解的测试现在将命令行属性源置于测试属性源之上 在 Spring Boot 2.7 及更高版本中,对 SpringBootTest 的属性源优先级进行了调整,使得通过命令行传递的属性&am…...

Race Track Generator Ultimate:Race Track Generator(赛车场赛道看台场景创建工具)

下载:​​Unity资源商店链接资源下载链接 效果图:...

数据结构7——二叉树的顺序结构以及堆的实现

在上篇文章数据结构6——树与二叉树中,我们了解了树和二叉树的概念,接着上篇文章,在本篇文章中我们学习二叉树顺序结构的实现。 目录 1. 二叉树的顺序存储结构 2. 堆的概念及结构 1. 堆的概念 2. 堆的结构 3. 堆的实现 1. 堆节点 2. 交…...

leetcode hot100 之【LeetCode 21. 合并两个有序链表】 java实现

LeetCode 21. 合并两个有序链表 题目描述 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接两个链表的节点组成的。 示例 1: 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4]示例 2: 输入:l1 …...

Android Camera系列(五):Camera2

Life was like a box of chocolates, you never know what you’re gonna get. 生命就像一盒巧克力,你永远无法知道下一个是什么味道的。 Android Camera系列(一):SurfaceViewCamera Android Camera系列(二&#xff0…...

从DexMV、VideoDex、MimicPlay到SeeDo:从人类视频中学习:机器人的主流训练方法之一

前言 在此文《UMI——斯坦福刷盘机器人:从手持夹持器到动作预测Diffusion Policy(含代码解读)》的1.1节开头有提到 机器人收集训练数据一般有多种方式,比如来自人类视频的视觉演示 有的工作致力于从视频数据——例如YouTube视频中进行策略学习 即最常见…...

如何在Docker中运行Squid

测试环境 VMware Rocky Linux 9.4 实现步骤 过程:写一个Dockerfile构建Squid镜像; 再写一个启动脚本start_squid.sh,在启动脚本中配置并运行Squid。 编写Dockerfile 以rockylinux9.3做基础镜像,通过yum安装Squid, 拷贝squid.conf FROM …...

Ubuntu22.04 加入AD域

Ubuntu22.04 加入AD域 要在Ubuntu 22.04上加入Active Directory (AD) 域,你可以使用realmd和sssd服务。以下是加入AD域的步骤和示例配置: 更新系统软件包列表: sudo apt update 下载安装必要的软件包: sudo apt install realm…...

多场景 OkHttpClient 管理器 - Android 网络通信解决方案

下面是一个完整的 Android 实现&#xff0c;展示如何创建和管理多个 OkHttpClient 实例&#xff0c;分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

Spring AI与Spring Modulith核心技术解析

Spring AI核心架构解析 Spring AI&#xff08;https://spring.io/projects/spring-ai&#xff09;作为Spring生态中的AI集成框架&#xff0c;其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似&#xff0c;但特别为多语…...

Windows安装Miniconda

一、下载 https://www.anaconda.com/download/success 二、安装 三、配置镜像源 Anaconda/Miniconda pip 配置清华镜像源_anaconda配置清华源-CSDN博客 四、常用操作命令 Anaconda/Miniconda 基本操作命令_miniconda创建环境命令-CSDN博客...

【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 定向转发机制

目录 节点的功能承载层&#xff08;GATT/Adv&#xff09;局限性&#xff1a; 拓扑关系定向转发机制定向转发意义 CG 节点的功能 节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能&#xff0c;如 Configuration …...

前端高频面试题2:浏览器/计算机网络

本专栏相关链接 前端高频面试题1&#xff1a;HTML/CSS 前端高频面试题2&#xff1a;浏览器/计算机网络 前端高频面试题3&#xff1a;JavaScript 1.什么是强缓存、协商缓存&#xff1f; 强缓存&#xff1a; 当浏览器请求资源时&#xff0c;首先检查本地缓存是否命中。如果命…...

算术操作符与类型转换:从基础到精通

目录 前言&#xff1a;从基础到实践——探索运算符与类型转换的奥秘 算术操作符超级详解 算术操作符&#xff1a;、-、*、/、% 赋值操作符&#xff1a;和复合赋值 单⽬操作符&#xff1a;、--、、- 前言&#xff1a;从基础到实践——探索运算符与类型转换的奥秘 在先前的文…...

flow_controllers

关键点&#xff1a; 流控制器类型&#xff1a; 同步&#xff08;Sync&#xff09;&#xff1a;发布操作会阻塞&#xff0c;直到数据被确认发送。异步&#xff08;Async&#xff09;&#xff1a;发布操作非阻塞&#xff0c;数据发送由后台线程处理。纯同步&#xff08;PureSync…...

相关类相关的可视化图像总结

目录 一、散点图 二、气泡图 三、相关图 四、热力图 五、二维密度图 六、多模态二维密度图 七、雷达图 八、桑基图 九、总结 一、散点图 特点 通过点的位置展示两个连续变量之间的关系&#xff0c;可直观判断线性相关、非线性相关或无相关关系&#xff0c;点的分布密…...

PydanticAI快速入门示例

参考链接&#xff1a;https://ai.pydantic.dev/#why-use-pydanticai 示例代码 from pydantic_ai import Agent from pydantic_ai.models.openai import OpenAIModel from pydantic_ai.providers.openai import OpenAIProvider# 配置使用阿里云通义千问模型 model OpenAIMode…...