欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用Java編寫一個出敬業(yè)福的小程序

 更新時間:2022年01月25日 10:15:20   作者:每日小新  
新年將至,又開始掃福活動,每年的敬業(yè)福成了大家難過的坎。所以本文將介紹一個通過Java編寫的一款福字生成器,感興趣的小伙伴可以試一試

1、前言

“福”的由來: 姜太公封一大批神仙時,卻把自己的妻子葉氏封為窮神,還告訴她說:“有福的地方,你不能去。”從此,家家過年貼福字,就是告訴窮神,我這里是有福的地方,你千萬不能進(jìn)來。福字,就是擺脫窮困、追求幸福的象征。

福字之所以倒貼,傳說起于清代恭親王府。那年春節(jié)前夕,大管家按例寫了幾個斗大的“福”字,叫人貼于王府的大門上。有個家丁目不識丁,竟將“福”字頭朝下貼上。恭親王福晉十分氣惱,欲鞭罰懲戒??蛇@大管家是個能言善辯之人,慌忙跪倒陳述:“奴常聽人說,恭親王壽高福大,如今大福真的到(倒)了。乃喜慶之兆。”恭親王一聽覺得合情合理,心想:“怪不得過往行人都說恭親王福到(倒)了,吉語說千遍,金銀增萬貫。沒學(xué)問的奴才,還真想不到有這種招式呢!”遂賞管家和家丁各五十兩銀子,可真是因禍得福。

新年將至,又開始掃福活動,每年的敬業(yè)福成了大家難過的坎,于是編寫一款福字生成器,提高大家掃福的效率與掃到敬業(yè)福的概率,小編已經(jīng)掃出,廢話不多說,直接上代碼(都在用Python寫好玩的,我就用Java寫點好玩的)

2、定義工具類

這兩個工具類其實可以不專門寫出來,隨意一點啦~

① 字體工具類

package com.mrxx.game;
import java.awt.*;
/*字體工具類*/
public class FontUtil {
    public static void drawWord(Graphics g,String str,Color color,int size,int x,int y,String font){
        g.setColor(color);
        g.setFont(new Font(font,Font.BOLD,size));
        g.drawString(str,x,y);
    }
}

② 圖片工具類

package com.mrxx.game;

import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
/*圖片工具類*/
public class ImgTool {

? //提取圖片工具1
? public static BufferedImage getimg(String path){
? ? BufferedImage img=null;
? ? try {
? ? ? img= ImageIO.read(new File(path));
? ? } catch (IOException e) {
? ? ? e.printStackTrace();
? ? }
? ? return img;
? }

? //工具2
? public static Image getImage(String filename){
? ? return Toolkit.getDefaultToolkit().getImage(filename);
? }
}

3、生成"福"主類

package com.mrxx.game;

import javax.swing.*;
import java.awt.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.image.BufferedImage;
import java.util.Arrays;
import java.util.List;
/*主類*/
public class RandFu extends JFrame {
? ? List<Color> colorList;
? ? List<String> arrayList;
? ? Integer index,fontRandom;
? ? BufferedImage bg=null;
? ? public RandFu(){
? ? ? ? arrayList= Arrays.asList("楷體","宋體","華文琥珀","華文行楷","幼圓","華文新魏","華文彩云","隸書");
? ? ? ? fontRandom=(int)((Math.random()*10)%8);
? ? ? ? System.out.println("字體:"+arrayList.get(fontRandom));
? ? ? ? bg=ImgTool.getimg("src/com/mrxx/img/bg.jpg");
? ? ? ? //初始化
? ? ? ? colorList=Arrays.asList(Color.gray,Color.black,Color.PINK, Color.orange,Color.RED);
? ? ? ? index=(int) ((Math.random()*10)%5);
? ? ? ? System.out.println("字體顏色"+index);
? ? ? ? setSize(600,600);
? ? ? ? setIconImage(ImgTool.getImage("src/com/mrxx/img/fu.png"));
? ? ? ? setLocationRelativeTo(null);
? ? ? ? setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
? ? ? ? setVisible(true);
? ? ? ? setBackground(Color.red);

? ? ? ? //鍵盤監(jiān)聽
? ? ? ? //設(shè)置面板鍵盤監(jiān)聽
? ? ? ? this.addKeyListener(new KeyAdapter() {
? ? ? ? ? ? //重寫鍵盤監(jiān)聽方法
? ? ? ? ? ? @Override
? ? ? ? ? ? public void keyPressed(KeyEvent e) {
? ? ? ? ? ? ? ? //判斷是否是空格
? ? ? ? ? ? ? ? if (e.getKeyCode() == KeyEvent.VK_SPACE) {
? ? ? ? ? ? ? ? ? ? reGame();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? });

? ? }

? ? //重啟
? ? public void reGame(){
? ? ? ? //關(guān)閉當(dāng)前窗口
? ? ? ? this.dispose();
? ? ? ? //開啟新窗口
? ? ? ? String[] args={};
? ? ? ? main(args);
? ? }


? ? @Override
? ? public void paint(Graphics g){
? ? ? ? //畫背景
? ? ? ? g.drawImage(bg,15,50,570,535,null);
? ? ? ? FontUtil.drawWord(g,"福",colorList.get(index),250,163,400,arrayList.get(fontRandom));
? ? ? ? //repaint();
? ? }

? ? public static void main(String[] args) {
? ? ? ? RandFu randFu=new RandFu();
? ? }
}

以上就是全部代碼

4、運行測試

程序啟動后空格鍵進(jìn)行“福”字的隨機生成,部分效果演示:

5、素材圖片

以下兩種圖片一個是背景,一個是標(biāo)題圖片(不想動手的,可以直接下載我上傳的資源(免費),有興趣的可以參考我以前的文章把這個程序打包成exe的應(yīng)用)使用方式空格鍵即可

到此這篇關(guān)于利用Java編寫一個出敬業(yè)福的小程序的文章就介紹到這了,更多相關(guān)Java內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 學(xué)習(xí)Java之自定義異常與NullPointerException的處理

    學(xué)習(xí)Java之自定義異常與NullPointerException的處理

    有時候Java自身提供的異常類并不能很好地表達(dá)我們的需求,所以這時候我們就可以自定義異常,也就是說,我們可以制造出一個自己的異常類,這樣就可以拋出或捕獲自己的異常了,本文就給大家詳細(xì)講講Java自定義異常與NullPointerException的處理
    2023-08-08
  • IDEA中Maven報錯Cannot resolve xxx的解決方法匯總(親測有效)

    IDEA中Maven報錯Cannot resolve xxx的解決方法匯總(親測有效)

    在IDEA中的pom文件中添加了依賴,并且正確加載了相應(yīng)依賴,pom文件沒有報紅,看起來像是把所有依賴庫全部加載進(jìn)來了,但是代碼中使用依賴的類庫使報紅,本文給大家介紹了IDEA中Maven報錯Cannot resolve xxx的解決方法匯總,需要的朋友可以參考下
    2024-06-06
  • SpringBoot+Mybatis使用Enum枚舉類型總是報錯No enum constant XX問題

    SpringBoot+Mybatis使用Enum枚舉類型總是報錯No enum constant&n

    這篇文章主要介紹了SpringBoot+Mybatis使用Enum枚舉類型總是報錯No enum constant XX問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • IDEA創(chuàng)建Maven工程Servlet的詳細(xì)教程

    IDEA創(chuàng)建Maven工程Servlet的詳細(xì)教程

    這篇文章主要介紹了IDEA創(chuàng)建Maven工程Servlet的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • java中List對象列表實現(xiàn)去重或取出及排序的方法

    java中List對象列表實現(xiàn)去重或取出及排序的方法

    這篇文章主要介紹了關(guān)于java中List對象列表實現(xiàn)去重或取出以及排序的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08
  • MyBatis-Plus 如何單元測試的實現(xiàn)

    MyBatis-Plus 如何單元測試的實現(xiàn)

    這篇文章主要介紹了MyBatis-Plus 如何單元測試的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 深入聊一聊JDK中的Map和Set

    深入聊一聊JDK中的Map和Set

    這篇文章主要給大家介紹了關(guān)于JDK中Map和Set的相關(guān)資料,文中通過示例代碼以及圖文介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用jdk具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2022-12-12
  • Springmvc的運行流程圖文詳解

    Springmvc的運行流程圖文詳解

    今天小編就為大家分享一篇關(guān)于Springmvc的運行流程圖文詳解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • java在hashmap初始化時賦初值過程解析

    java在hashmap初始化時賦初值過程解析

    這篇文章主要介紹了java在hashmap初始化時賦初值過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • mybatis?plus常用注解的具體使用

    mybatis?plus常用注解的具體使用

    本文主要介紹了mybatis?plus常用注解的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04

最新評論