Pycharm制作搞怪弹窗(声音强制最大,屏幕亮度强制最亮,按钮躲避,弹窗炸弹)

闲来无聊用python制作了一个搞怪的桌面弹窗程序,惊喜连连哦

运行动图

实现代码:

import tkinter as tk
import tkinter.font as tkFont # 引入字体模块
import time
import sys
import pygame
import random
import threading
import win32api
import wmi
from tkinter.messagebox import*#播放音频
path = "mp3/暗恋.mp3"#一开始的音乐,替换成你的地址
pygame.mixer.init()
pygame.mixer.music.load(path)
pygame.mixer.music.play()#设置样式
WINWIDTH = 800#窗体宽度
WINHEIGHT = 600#窗体高度
WINX = 400#弹窗横坐标
WINY = 100#弹窗纵坐标
img_x = 250#设置图片横坐标
img_y = 100#设置图片纵坐标
question_x = 250#设置问题横坐标
question_y = 60#设置问题纵坐标
button_width = 100#设置按钮宽度
button_height = 40#设置按钮高度
button_y = 520#按钮纵坐标
yes_button_x = img_x - button_width // 2#确定按钮横坐标
no_button_x = WINWIDTH - img_x - button_width//2#否定按钮横坐标#显示文本
global text
global title
question = "question?"
yes = "OK"
no = "Wait"
title = "I need money"#播放音频
def Start_music():path = "mp3/殿堂.mp3"#点击ok按钮后播放的音频,这里替换成你的音频文件地址pygame.mixer.init()pygame.mixer.music.load(path)pygame.mixer.music.play()#调整屏幕亮度
def ScreenChange() -> object:SCREEN = wmi.WMI(namespace='root\WMI')a = SCREEN.WmiMonitorBrightnessMethods()[0]a.WmiSetBrightness(Brightness=100, Timeout=500)#调整Windows音量
def changeVd():WM_APPCOMMAND = 0x319APPCOMMAND_VOLUME_MAX = 0x0aAPPCOMMAND_VOLUME_MIN = 0x09# 音量最大win32api.PostMessage(-1, WM_APPCOMMAND, 0x30292, APPCOMMAND_VOLUME_MAX * 0x10000)# 音量最小#win32api.PostMessage(-1, WM_APPCOMMAND, 0x30292, APPCOMMAND_VOLUME_MIN * 0x10000)#弹窗炸弹
def dow():window = tk.Tk()width = window.winfo_screenwidth()height = window.winfo_screenheight()a = random.randrange(0, width)b = random.randrange(0, height)window.title(title)window.geometry("300x50" + "+" + str(a) + "+" + str(b))tk.Label(window,text=text,  # 标签的文字# bg='white',  # 背景颜色font=('楷体', 17),  # 字体和字体大小width=15, height=2  # 标签长宽).pack()  # 固定窗口位置window.mainloop()#触发弹窗炸弹
def open_start():threads = []for i in range(50):  # 需要的弹框数量t = threading.Thread(target=dow)t.setDaemon(True)threads.append(t)time.sleep(0.1)threads[i].start()# 新建无法直接关闭的TK类
class NewTk(tk.Tk):#重写“X”按钮def destroy(self):root = tk.Tk()root.withdraw()for i in range(3):if i == 0:showinfo(title="title1", message="question1")if i == 1:showinfo(title="title2", message="question2")if i == 2:showinfo(title="title3", message="question3")global texttext = "title"global titletitle = "text"open_start()#主程序体
thread = threading.Thread(target=changeVd)
thread.setDaemon(True)
thread.start()
ScreenChange()
win = NewTk()
win.title(title)
win.geometry("%sx%s+%s+%s" % (WINWIDTH, WINHEIGHT, WINX, WINY))#样式设置
win.resizable(0, 0)#阻止窗口大小化photo = tk.PhotoImage(file="lib/没钱了.gif")#这里替换成你的图片地址
imgLabel = tk.Label(win, image=photo)#将图片添加至窗口
imgLabel.place(x=img_x, y=img_y)#设置图片位置question_text = tkFont.Font(size=20, weight=tkFont.BOLD)
q = tk.Label(win, text=question, font=question_text)
q.place(x=question_x, y=question_y)#OK按钮点击事件
def click_yes():Start_music()root = tk.Tk()root.withdraw()for i in range(5):if i == 0:showinfo(title="title1", message="text1")if i == 1:showinfo(title="title2", message="text2")if i == 2:showinfo(title="title3", message="text3")global texttext = "text"global titletitle = "title"open_start()if i == 3:print("运行退出程序")sys.exit(0)yes_button = tk.Button(win, text=yes, command=click_yes)
yes_button.place(x=yes_button_x, y=button_y, width=button_width, height=button_height)no_button = tk.Button(win, text=no)
no_button.place(x=no_button_x, y=button_y, width=button_width, height=button_height)#NO按钮触碰事件
def mouse_in_no_click(event):bx, by = random.randint(button_width, WINWIDTH-button_width), random.randint(button_height, WINHEIGHT-button_height)no_button.place(x=bx, y=by)no_button.bind("<Motion>", mouse_in_no_click)
win.mainloop()

学会了吗,快去试一试吧,将文本和图片替换掉又能制造更多的惊喜呦

Pycharm制作搞怪弹窗(声音强制最大,屏幕亮度强制最亮,按钮躲避,弹窗炸弹)相关推荐

  1. 利用PS软件制作搞怪星爷QQ表情

    [转自]http://68ps.5d6d.com/thread-4113-1-8.html 新人第一帖哈,大家可要支持哟! 来源:PConline 作者:不详 本教程介绍动态QQ表情的制作方法.思路需 ...

  2. 抖音里王者荣耀游戏视频搞怪的配音怎么做

    抖音里王者荣耀游戏视频搞怪的配音怎么做? 2020-10-13 17:06 来源:二喵的鱼 原标题:抖音里王者荣耀游戏视频搞怪的配音怎么做? 盘点抖音视频爆品类型,不知不觉中搞笑的游戏视频竟已冲出了一 ...

  3. python飞机大战联网版_Python 飞机大战搞怪版本

    python 飞机大战搞怪版本 (飞机为迷你亚索,外星人为迷你小诺手,由于时间关系和图片素材较难寻找,仅仅做了简易版,没有贴上背景图片.由于篇幅原因,对于函数讲解较为简略,可以自行搜索相应函数的用法) ...

  4. 搞怪又可爱!一组emoji表情

    emoji,是使用在网页和聊天中的形意符号,最初是日本在无线通信中所使用的视觉情感符号(图画文字).现在的emoji表情,不仅仅在聊天和书写文字时能表达丰富的情感,也是最新最slay的时尚元素,是年轻 ...

  5. Sneaky Sasquatch Mac(捣蛋大脚怪搞怪冒险游戏)

    Sneaky Sasquatch Mac是一款名叫捣蛋大脚怪,又名鬼鬼祟祟的大脚怪的搞怪冒险游戏.Sneaky Sasquatch Mac版游戏非常的简单,玩家在游戏中扮演的是一个野人,您需要在游戏中 ...

  6. 扯淡搞怪聊天室APP设计

    Chapter 1: 应用简介 Part 1.1 背景 本应用参照了一个小众的搞怪app"Die With me"的格局,总体是一个以多人聊天室为基础的社交软件,并添加了趣味的游戏 ...

  7. 用“易语言.飞扬”写的连珠游戏和搞怪碰碰球,作者大伟,含源代码

    请到论坛下载: 连珠游戏 - http://bbs.dywt.com.cn/dispbbs.asp?boardID=148&ID=147756&page=1 我玩连珠游戏,得分6610 ...

  8. 万圣节数码搞怪变妆秀

    在西方国家,每年的10月31日,有个"Halloween",辞典解释为"The eve of All Saints' Day",中文译作:"万圣节之夜 ...

  9. 历史上最有才最搞怪的情书之一

    历史上最有才最搞怪的情书之一 泡琳表 雪仗言:自吾进群日半而偶遇夏琳:今众求三分,深感欣慰,此诚危急存亡之冬也.然众人皆为君献大殷,吾也不可忘身于外乎.盖追吾群之大势,欲取之君裙下也.诚意奋笔疾书,得 ...

  10. 最搞怪面试问题TOP10:你也来试试看 (大家一起来做题)

    最搞怪面试问题TOP10:你也来试试看! 1 如果把你缩小到铅笔的大小,放入搅拌器,你要如何脱困?(高盛) 2 一枚25分美元硬币周围有多少锯齿纹?(德业众信会计师事务所) 3 功夫的哲学是什么?(美 ...

最新文章

  1. [016]转--C++拷贝构造函数详解
  2. 内置函数之sorted,filter,map
  3. 【HDU - 5094】 Maze (状态压缩+bfs)
  4. callback函数_小程序不同页面的异步回调,callback和promise的使用讲解
  5. struts2与spring集成时,关于class属性及成员bean自动注入的问题
  6. MySQL搭建主从(一主一从)
  7. 规格模式(Specification)
  8. 计算机室对计算机网络系统,计算机网络与实验室管理系统建设
  9. 平面几何----向量证明欧拉线
  10. android窗帘拉开动画,Android 窗帘(Curtain Menu)效果五之应用场景和使用方法
  11. php.ini在哪里 微赞_微赞秀HTML5移动场景制作平台系统v1.0.2
  12. 前缀和——(1)什么是前缀和和一维前缀和
  13. 网络安全----密码学
  14. 回望我的2019:35岁的程序员,没想到找工作这么难!
  15. 【数字信号处理2】IIR 滤波器设计
  16. 使用C#语言编写记事本程序
  17. 利用python爬取电影天堂搜索部分,并利用pyqt可视化
  18. Java常量池理解与总结(讲的非常浅显易懂)
  19. 哲理故事与管理之道(14)-如何留住员工
  20. 视频网站试水正版影视剧同步播出 免费大餐能吃多久

热门文章

  1. NSSM部署Net Core流程
  2. Android--BRVAH官方使用指南
  3. QCC小组活动推行知识系列介绍
  4. python用什么数据库比较好_Python和主流数据库
  5. mysql主从 备份数据库脱敏_数据库脱敏有用吗?会不会损坏重要数据?
  6. 电容电感频率测量表 电路原理
  7. Python实现Excel和TXT文件格式的转换
  8. 解决MyEclipse中导入项目的javascript文件中文乱码
  9. python给矩阵赋值_python 实现矩阵旋转
  10. Chrome浏览器安装Axure插件