躁!DJ 风格 Java 桌面音乐播放器

news/2025/2/19 8:50:49/

本文适合有 Java 基础知识的人群,跟着本文可学习和运行 Java 版桌面 DJ 音乐播放器。

本文作者:HelloGitHub-秦人

HelloGitHub 推出的《讲解开源项目》系列,今天给大家带来一款开源 Java 版桌面 DJ 音乐播放器项目——XR3Player,它强大的功能和炫酷的展示效果,你肯定会喜欢上它的!

项目源码地址:https://github.com/goxr3plus/XR3Player

一、项目介绍

OpenJFX 是一个开源的下一代客户端应用程序平台,适用于基于 Java 构建的桌面、移动和嵌入式系统。本篇我们就重点讲一下一款 Java 版桌面 DJ 音乐播放器,先看运行效果吧!

也可以直接下载音乐播放器安装包:下载地址,更多 Java 桌面程序可以从这里获取:openjfx.io

二、运行项目

2.1 前提

  • 安装 JDK11.2 或者更高版本,全称 Java Development Kit,它是 Java 的库函数,是编译、运行 Java 程序的工具包。

  • 安装 Maven3 环境,进行项目构建和项目依赖包管理。

  • 本地安装开发工具 IntelliJ IDEA。

  • 本地安装 GitBash 工具,主要用于下载项目。

2.2 下载项目

下载项目到本地,使用 GitBash 工具,执行如下命令:

git clone https://github.com/goxr3plus/XR3Player.git

将项目导入 Idea,Maven 会自动下载所需的依赖。等待几分钟后项目依赖包都可以下载下来。使用 Idea 自带的 Maven 构建工具,就可以将项目轻松打包。如下图:

注意项目有一个依赖 jxbrowser-win64 可能会下载失败,这个 jar 竟然有 40Mb,建议手动下载后导入项目依赖。jxbrowser-win64 下载地址

2.3 运行项目

创建入口类

打开 Run/Debug Configurations 创建一个 Application ,并选择入口类,如下图:

VM options 设置

VM options 添加下面配置参数,然后点击保存即可。

--add-exports
javafx.controls/com.sun.javafx.scene.control.behavior=com.jfoenix
--add-exports
javafx.controls/com.sun.javafx.scene.control=com.jfoenix
--add-exports
javafx.base/com.sun.javafx.binding=com.jfoenix
--add-exports
javafx.graphics/com.sun.javafx.stage=com.jfoenix
--add-exports
javafx.base/com.sun.javafx.event=com.jfoenix
--add-exports
javafx.graphics/com.sun.javafx.scene=org.controlsfx.controls,
--add-exports
javafx.graphics/com.sun.javafx.scene.traversal=org.controlsfx.controls

然后点击 Run MainDebug Main 就可以本地运行项目了。如下图:

三、音乐播放器使用

项目运行起来长这样子,如下图:

1、需要创建一个用户,点击登录就可以进入音乐播放器管理页面。

2、进入音乐播放器,需要创建自己的音乐播放列表,并导入本地音乐。

3、导入本地音乐后可选择,选择需要播放的音乐,这里直接拖动你想播放的音乐。

4、DJ 版播放器可以同步播放两首歌曲,并可以分别控制音量和播放速度。

5、音乐播放器内嵌了浏览器,和在线音乐的功能。

6、其他的功能期待你的发掘,如果你也喜欢这款音乐播放器的话。

四、JavaFx 工作原理

JavaFX 的原理是这样的(如下图):舞台(Stage),场景(Scene),容器(Container),布局(Layout)和控件(Controls)之间的关系:

在 JavaFX 中,Stage 是应用程序窗口,其中包含称为 Scene 的空间。Scene 包含界面的组件,如 UI 空间(按钮,输入框,复选框),容器等。

创建 JavaFx 项目

打开 Idea 开发工具,File -> New -> Project... -> Java Fx 创建项目,如下图:

Idea 会自动生成代码,这里我做了一些改动,代码如下:

public class Main extends Application {@Overridepublic void start(Stage primaryStage) throws Exception{primaryStage.setTitle("JavaFX 登录");//创建网格面板GridPane grid = new GridPane();grid.setAlignment(Pos.CENTER);grid.setHgap(10);grid.setVgap(8);grid.setPadding(new Insets(20, 20, 20, 20));//设置背景色Paint backgroundColor = new Color(0.32,0.6,0.32,1);grid.setBackground(new Background(new BackgroundFill(backgroundColor,null,null)));Text sceneTitle = new Text("欢迎进入系统");sceneTitle.setFont(Font.font("Tahoma", FontWeight.NORMAL, 20));grid.add(sceneTitle, 0, 0, 2, 1);//创建用户名标签Label userName = new Label("用户名:");grid.add(userName, 0, 1);//创建用户名输入框TextField userTextField = new TextField();grid.add(userTextField, 1, 1);//创建密码标签Label pwLabel = new Label("密码:");grid.add(pwLabel, 0, 2);//创建密码输入框PasswordField passwordField = new PasswordField();grid.add(passwordField, 1, 2);//创建提交按钮Button commitBtn = new Button("登录");HBox hbBtn = new HBox(10);hbBtn.setAlignment(Pos.BOTTOM_RIGHT);hbBtn.getChildren().add(commitBtn);grid.add(hbBtn, 1, 4);final Text actionTarget = new Text();grid.add(actionTarget, 1, 6);commitBtn.setOnAction(new EventHandler<ActionEvent>() {@Overridepublic void handle(ActionEvent e) {actionTarget.setFill(Color.FIREBRICK);actionTarget.setText("已发送请求到后台!");}});Scene scene = new Scene(grid, 300, 275);primaryStage.setScene(scene);primaryStage.show();}public static void main(String[] args) {launch(args);}
}

代码运行效果如下图:

了解 Java Swing 的伙伴应该很熟悉,两者的原理很相似。上面代码的意思是:创建一个面板,然后在面板上添加标签,输入框和按钮,并对按钮添加绑定事件,然后把这个面板添加到场景中,这个窗口就完成了。

五、最后

Java 桌面 DJ 音乐播放器是真的香!不知道你对这款音乐播放器有什么感受,欢迎在评论区说说自己的想法。人们都喜欢美的好的事物,而今天的这个项目是通过 Java 代码撸出来的,难道你还不会不喜欢 Java 这门编程语言吗?有了成品的直观呈现,才能在视觉上产生更强的冲击,可能会更加能激发你的学习动力!如果通过我的内容分享,能让你对编程产生兴趣,我是真的开心。如果渐渐喜欢上开源项目,平时也喜欢 coding,并且愿意分享你的经验和成果,那就更完美了,编程使我快乐,内容分享让我们认识更多伙伴!

教程至此,你应该也能快速运行 DJ 版音乐播放器了。编程是不是也特别有意思呢?手痒痒了那就赶紧安装这款音乐播放器吧,对源码感兴趣的朋友可以开始学习项目源码了~

参考资料

[1]《讲解开源项目》: https://github.com/HelloGitHub-Team/Article

[2]解下载地址: https://xr3player.netlify.com/

[3]openjfx.io: https://openjfx.io/

[4]jxbrowser-win64 下载地址: https://jxbrowser.support.teamdev.com/support/discussions/topics/9000054587

[5]官方文档: https://openjfx.io/openjfx-docs/

[6]入门教程: https://www.yiibai.com/javafx/javafx-tutorial-for-beginners.html

关注公众号加入交流群

『讲解开源项目系列』——让对开源项目感兴趣的人不再畏惧、让开源项目的发起者不再孤单。跟着我们的文章,你会发现编程的乐趣、使用和发现参与开源项目如此简单。欢迎联系我(微信:xueweihan,备注:讲解)加入我们,让更多人爱上开源、贡献开源~

“阅读原文”获取更多信息、“在看”让本文被更多人看到、“赞赏”支持我们。


http://www.ppmy.cn/news/375191.html

相关文章

桌面widget详解(四)——桌面音乐播放器(实战)

前言&#xff1a;这将是这个系列的最后一篇了&#xff0c;我写这几篇文章也是累的快不行了&#xff0c;再写就真的要吐了&#xff0c;言归正转&#xff0c;前面三篇已经把widget中涉及到的基本知识基本上讲完了&#xff0c;今天我们就做一个小例子&#xff0c;看看桌面音乐播放…

桌面音乐频谱linux,X Music Spectrum(音乐频谱桌面特效)

XMusicSpectrum是一款音乐频谱桌面特效软件&#xff0c;听上去可能很复杂&#xff0c;简单点来说就是当你用播放器播放音乐时&#xff0c;屏幕下方会出现动态音乐频谱&#xff0c;让你的桌面变成更加丰富多彩。 相关软件软件大小版本说明下载地址 X Music Spectrum是一款非常有…

用了【WRITE-BUG数字空间】,其他文档软件可以卸载、注销账号了

都3202年了文档都进化成在线协同编辑文档了 让我看看谁还在用本地软件写文档啊~滋滋滋 使用【WRITE-BUG数字空间】云文档全键盘写作不是梦&#xff01;铁汁&#xff0c;听我句劝&#xff0c;把本地软件卸载了奥&#xff0c;你把握不住~ 程序员兄弟姐妹们的最爱编辑器&#x…

音频可视化图形引擎—Specinker

相关链接&#xff1a; 下载地址&#xff1a;specinker5.1.exe - 蓝奏云&#xff08;崩溃请更新显卡驱动&#xff0c;并使用独立显卡打开&#xff09; 旧版博客&#xff1a;Specinker旧版博客_ItaLink-CSDN博客 使用教程&#xff1a;Spec 使用教程_ItaLink-CSDN博客_spec软件…

盘点 6 个开源的音乐播放器!

盘点几个开源的音乐播放器&#xff0c;在这些项目中你可以学习到 React、Vue、Kotlin等相关的技术栈。有的是仿当前比较火的音乐应用&#xff0c;而有的是开发者自主开发。 本期推荐开源项目目录&#xff1a; 1. 仿 QQ 音乐 2. 网易云音乐 3. Material 主题音乐播放器 4. 不太现…

Android音乐App桌面图标制作以及启动页面开发(简易音乐 一)

Android音乐App桌面图标制作以及启动页面开发&#xff08; 简易音乐 一 &#xff09; 关于效果第一步第二步第一步 修改SplashAcitivity的布局页面第二步 修改androidmanifest.xml第三步 权限申请帮助类第四步 修改splashAcitivity.java 关于 其实一直想做一款属于自己的音乐a…

C++结构体

目录 一、结构体的概念 二、结构体定义和使用 三、结构体数组 四、结构体指针 五、结构体嵌套结构体 六、结构体做函数参数 七、结构体中const使用场景 一、结构体的概念 结构体属于用户自定义的数据类型&#xff0c;允许用户存储不同的数据类型 二、结构体定义和使用 语法&…

《springboot使用篇》——只为使用,一篇就够

目录 环境&#xff1a; spring boot概述 一&#xff0c;springboot快速入门 1.创建maven项目 2.引入起步依赖 3.自定义controller 4.编写启动类 5.开始测试 二.快捷方式创建sprinboot工程 补充 三&#xff0c;配置文件 1.配置文件之间的关系 2.yml配置文件 1.基本…