python实现敲木鱼加功德包含加音效和敲击动作(附demo)

 更新时间:2023年11月03日 12:01:35   作者:xhtdtk  
敲木鱼加功德是一款很火的动画,本文主要介绍了python实现敲木鱼加功德包含加音效和敲击动作,具有一定的参考价值,感兴趣的可以了解一下

0、界面展示及视频演示

这个是界面:

这个是地址:【用python做一个敲木鱼试试-哔哩哔哩】 https://www.bilibili.com/video/BV1Vy4y1A7r5/

打包好的exe及源码和其他文件在这里,听到有说美化和尚和加倍功德,自己改和自己P吧 https://pan.baidu.com/s/1DCbo4hvN1KxGlSsr4EBqAw?pwd=gfqt 

1、先做一个基本界面

import tkinter
from PIL import Image, ImageTk # pip install pillow
 
# 界面
top=tkinter.Tk()
top.title('敲木鱼加功德')
top.geometry('410x400')
top.configure(bg='black')
 
# 准备图片
qiaomuyutupian=ImageTk.PhotoImage(file='敲木鱼.jpg') # 转化为tkinter可以使用的图片
 
# 初始化功德
gongde=0
 
# 标签
label1=tkinter.Label(top,text='积攒功德:'+str(gongde),font=('华文新魏',15),fg='white',bg='black',width=18)
label1.place(x=100,y=70)
 
# 方法
def qiaomuyu():
        # 设gongde为全局变量,并更新标签
        global gongde
        gongde=gongde+1
 
# 按钮
button1=tkinter.Button(top,image=qiaomuyutupian,relief='ridge',command=qiaomuyu)
button1.place(x=100,y=100)
 
top.mainloop()

2、用pygame添加声音最简单,并用多线程启动(这样不用等声音播放完就可以继续按了)

import tkinter
import threading
import pygame # pip install pygame
from PIL import Image, ImageTk # pip install pillow
 
# 准备音频
pygame.mixer.init()
pygame.mixer.music.load('敲.mp3')
 
# 界面
top=tkinter.Tk()
top.title('敲木鱼加功德')
top.geometry('410x400')
top.configure(bg='black')
 
# 准备图片
qiaomuyutupian=ImageTk.PhotoImage(file='敲木鱼.jpg') # 转化为tkinter可以使用的图片
 
# 初始化功德
gongde=0
 
# 标签
label1=tkinter.Label(top,text='积攒功德:'+str(gongde),font=('华文新魏',15),fg='white',bg='black',width=18)
label1.place(x=100,y=70)
 
# 方法
def qiaomuyu():
        # 设gongde为全局变量,并更新标签
        global gongde
        gongde=gongde+1
        label1.config(text='积攒功德:'+str(gongde))
 
        # 多线程启动解决延时,虽然延迟足够小,但为了更有效果
        th=threading.Thread(target=pygame.mixer.music.play)
        th.start()
 
# 按钮
button1=tkinter.Button(top,image=qiaomuyutupian,relief='ridge',command=qiaomuyu)
button1.place(x=100,y=100)
 
top.mainloop()

3、添加上浮移动的文字。

由于实在不能把控件设置成透明色,所以用个背景色为黑色的Text控件,只要逐行删除就有效果了,同样多线程启动

import time
import tkinter
import threading
import pygame # pip install pygame
from PIL import Image, ImageTk # pip install pillow
 
# 准备音频
pygame.mixer.init()
pygame.mixer.music.load('敲.mp3')
 
# 界面
top=tkinter.Tk()
top.title('敲木鱼加功德')
top.geometry('410x400')
top.configure(bg='black')
 
# 准备图片
qiaomuyutupian=ImageTk.PhotoImage(file='敲木鱼.jpg') # 转化为tkinter可以使用的图片
 
# 初始化功德
gongde=0
 
# 标签
label1=tkinter.Label(top,text='积攒功德:'+str(gongde),font=('华文新魏',15),fg='white',bg='black',width=18)
label1.place(x=100,y=70)
 
def showplus():
        for i in range(4):
                text1.insert('insert',' \n')
        else:
                text1.insert('insert',' 功德 + 1')
 
        for i in range(5):
                time.sleep(0.03)
                text1.delete(1.0, 2.0)
 
# 方法
def qiaomuyu():
        # 设gongde为全局变量,并更新标签
        global gongde
        gongde=gongde+1
        label1.config(text='积攒功德:'+str(gongde))
 
        # 多线程启动解决延时,虽然延迟足够小,但为了更有效果
        th=threading.Thread(target=pygame.mixer.music.play)
        th.start()
 
        th2=threading.Thread(target=showplus)
        th2.start()
 
# 按钮
button1=tkinter.Button(top,image=qiaomuyutupian,relief='ridge',command=qiaomuyu)
button1.place(x=100,y=100)
 
text1=tkinter.Text(top,width=10,height=5,bg='black',bd=0,foreground='white')
text1.place(x=125,y=115)
top.mainloop()

4、P一张敲到木鱼的图片,两张图片来回切换就有动画效果了,同样多线程启动

import time
import tkinter
import threading
import pygame # pip install pygame
from PIL import Image, ImageTk # pip install pillow
 
# 准备音频
pygame.mixer.init()
pygame.mixer.music.load('敲.mp3')
 
# 界面
top=tkinter.Tk()
top.title('敲木鱼加功德')
top.geometry('410x400')
top.configure(bg='black')
 
# 准备图片
qiaomuyutupian=ImageTk.PhotoImage(file='敲木鱼.jpg') # 转化为tkinter可以使用的图片
qiaomuyutupian2=ImageTk.PhotoImage(file='敲木鱼2.jpg') # 转化为tkinter可以使用的图片
 
# 初始化功德
gongde=0
 
# 标签
label1=tkinter.Label(top,text='积攒功德:'+str(gongde),font=('华文新魏',15),fg='white',bg='black',width=18)
label1.place(x=100,y=70)
 
def showplus():
        for i in range(4):
                text1.insert('insert',' \n')
        else:
                text1.insert('insert',' 功德 + 1')
 
        for i in range(5):
                time.sleep(0.03)
                text1.delete(1.0, 2.0)
 
def changetupian():
        button1.config(image=qiaomuyutupian2)
        time.sleep(0.1)
        button1.config(image=qiaomuyutupian)
 
# 方法
def qiaomuyu():
        # 设gongde为全局变量,并更新标签
        global gongde
        gongde=gongde+1
        label1.config(text='积攒功德:'+str(gongde))
 
        # 多线程启动解决延时,虽然延迟足够小,但为了更有效果
        th=threading.Thread(target=pygame.mixer.music.play)
        th.start()
 
        th2=threading.Thread(target=showplus)
        th2.start()
 
        th3=threading.Thread(target=changetupian)
        th3.start()
 
# 按钮
button1=tkinter.Button(top,image=qiaomuyutupian,relief='ridge',command=qiaomuyu)
button1.place(x=100,y=100)
 
text1=tkinter.Text(top,width=10,height=5,bg='black',bd=0,foreground='white')
text1.place(x=125,y=115)
 
 
top.mainloop()

到此这篇关于python实现敲木鱼加功德包含加音效和敲击动作(附demo)的文章就介绍到这了,更多相关python 敲木鱼加功德内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Keras之自定义损失(loss)函数用法说明

    Keras之自定义损失(loss)函数用法说明

    这篇文章主要介绍了Keras之自定义损失(loss)函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python AES加密实例解析

    Python AES加密实例解析

    这篇文章主要介绍了Python AES加密实例解析,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Python for循环与range函数的使用详解

    Python for循环与range函数的使用详解

    这篇文章主要介绍了Python for循环与range函数的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • Python读取文件的三种方式总结

    Python读取文件的三种方式总结

    Python的文本处理是经常碰到的一个问题,非常重要的,这篇文章主要和大家分享的是3个Python读取文本文件内容的常用方法,希望对大家深入学习Python有所帮助
    2023-07-07
  • Hadoop中的Python框架的使用指南

    Hadoop中的Python框架的使用指南

    这篇文章主要介绍了Hadoop中的Python框架的使用指南,Hadoop一般使用复杂的Java操作,但通过该框架使得Python脚本操作Hadoop成为了可能,需要的朋友可以参考下
    2015-04-04
  • Python项目打包并部署到Docker详细步骤

    Python项目打包并部署到Docker详细步骤

    这篇文章主要介绍了如何使用Docker将Python项目打包成镜像并部署为容器,包括准备工作、Python项目结构、编写Dockerfile、构建Docker镜像、运行容器、优化镜像大小、自动化部署以及总结,需要的朋友可以参考下
    2025-03-03
  • 使用pandas生成/读取csv文件的方法实例

    使用pandas生成/读取csv文件的方法实例

    在使用Pandas处理数据时,常见的读取数据的方式时从Excel或CSV文件中获取,这篇文章主要给大家介绍了关于如何使用pandas生成、读取csv文件的相关资料,需要的朋友可以参考下
    2021-07-07
  • Python制作七夕表白案例分享

    Python制作七夕表白案例分享

    这篇文章主要介绍了Python制作七夕表白案例分享,文章利用Python的基本操作实现七夕表白案例,需要的小伙伴可以参考一下
    2022-08-08
  • python简单实现获取当前时间

    python简单实现获取当前时间

    最近项目中经常需要python去取当前的时间,虽然不是很难,但是老是忘记,用一次丢一次,为了能够更好的记住,我今天特意写下python 当前时间这篇文章,如果你觉的对你有用的话,可以收藏下。
    2016-08-08
  • 将python代码打包成.exe文件直接运行的具体步骤

    将python代码打包成.exe文件直接运行的具体步骤

    小编最近收到了一个小伙伴的问题,就是那么多有趣的代码,怎么发给别人,让没有python环境的小伙伴也可以使用呢,本文小编将带着大家探索如何将自己的python代码打包成.exe可执行文件,一起来看看吧
    2024-02-02

最新评论