?
-
第一章:程序的思路分析
- 1.思路分析
程序采用面向對象的思想,包含主程序,面板類和雪花類。愛掏網 - it200.com
主程序用來生成窗口,存放面板等作用。愛掏網 - it200.com
面板類用來存放背景圖片,存放生成的雪花對象,定時去刷新雪花的位置,形成雪花飄落的效果。愛掏網 - it200.com
雪花類用來生成雪花對象,提供雪花移動的方法。愛掏網 - it200.com
-
第二章:程序的代碼實現
- 1. 準備工作
打開idea開發工具,把bg.png、bg2.png、bg3.png和snow.png圖片拷貝到src目錄下。愛掏網 - it200.com
創建cn.tx.utils和cn.tx.domain的包結構。愛掏網 - it200.com
把FrameUtils.java拷貝到utils包中。愛掏網 - it200.com
把XueHua.java和MyJpanel.java拷貝到domain包中。愛掏網 - it200.com
創建cn.tx.main包,創建MyFrame類,開始編寫程序。愛掏網 - it200.com
- 2. 代碼實現
編寫主程序,主要是生成窗口、面板和設置背景圖片。愛掏網 - it200.com
package cn.tx.main;
?
import cn.tx.domain.MyJpanel;
import cn.tx.utils.FrameUtils;
?
import javax.swing.*;
?
/*** 作者:櫻木老師*/
public class Demo1 {public static void main(String[] args) {// 創建窗口對象JFrame frame = new JFrame("我超喜歡你的");// 初始化大小和顯示位置FrameUtils.init(frame,1000,700);// 創建面板對象MyJpanel jpanel = new MyJpanel(frame);// 切換背景圖片String [] bgs = {"bg.png","bg2.png","bg3.png"};// 設置背景圖片jpanel.changebg(jpanel,bgs);// 添加frame.add(jpanel);// 啟動線程,執行動畫效果new Thread(jpanel).start();// 開啟新的線程,播放背景音樂new Thread(new MyMusic()).start();// 顯示frame.setVisible(true);}
?
}
?
- 3. 可以添加背景音樂
把xxx.mp3的背景音樂拷貝到src目錄下
在項目中導入jl1.0.jar(播放音樂需要使用的jar包)
把MusicUtils.java工具類拷貝到cn.tx.utils包中
編寫播放音樂的類(也是使用線程的方式)
package cn.tx.main;
?
import cn.tx.utils.MusicUtils;
?
/*** 作者:櫻木老師*/
public class MyMusic implements Runnable {@Overridepublic void run() {// 播放音樂MusicUtils.play(MyMusic.class.getResourceAsStream("/qt.mp3"));}
?
}
?修改主函數,啟動線程,加入播放背景音樂的代碼
?
package cn.tx.main;
?
import cn.tx.domain.MyJpanel;
import cn.tx.utils.FrameUtils;
?
import javax.swing.*;
?
/*** 作者:櫻木老師*/
public class Demo1 {
?public static void main(String[] args) {// 創建窗口對象JFrame frame = new JFrame("撩妹");// 初始化大小和顯示位置FrameUtils.init(frame,1000,700);// 創建面板對象MyJpanel jpanel = new MyJpanel(frame);// 添加frame.add(jpanel);// 啟動線程,執行動畫效果new Thread(jpanel).start();// 開啟新的線程,播放背景音樂new Thread(new MyMusic()).start();// 顯示frame.setVisible(true);}
?
}
?
根據本人多年從業以及學習經驗,錄制了一套最新的Java精講視頻教程,如果你現在也在學習Java,在入門學習Java的過程當中缺乏系統的學習教程,你可以加群654631948領取下學習資料,面試題,開發工具等,群里有資深java老師做答疑,每天也會有基礎部分及架構的直播課,也可以加我的微信renlliang2024做深入溝通,只要是真心想學習Java的人都歡迎。愛掏網 - it200.com
?
java基礎教程:https://ke.qq.com/course/149432?tuin=57912c43
Java分布式互聯網架構/微服務/高性能/springboot/springcloud:
https://ke.qq.com/course/179440?tuin=57912c43