Python小程序:你看?这千年难遇的雪景—简直“美到犯规” 满屏雪花飞舞
Posted 梦子mengy7762
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python小程序:你看?这千年难遇的雪景—简直“美到犯规” 满屏雪花飞舞 相关的知识,希望对你有一定的参考价值。
导语
作为南方人!
每每下雪大家都会激动不已,尽管打工人上班的步伐不能停歇,尽管全身冷得嘚嘚嘚嘚
尽管大棉袄裹了又裹,但依旧挡不住大家掏出手机“咔”几张,参与朋友圈“初雪大赛”!
唯美纷飞的落雪场景成为那天那个地方下雪了的热门话题
小编赶紧整理了一波!让大家一饱眼福!!
很多人说?现在不是秋天嘛?这么热的天,哪儿来的雪化?不要急,不要急!说到做到!不用冬天也能看雪啦~
最近国庆结束——刚好开始降温啦~真正的到秋天了,冬天还会远嘛?
小编可以为你下一场雪,抓住机会吧——这款雪景不仅每个人都能拿来玩,用适合表白哦!跟我来看看吧~
正文
一波**“美到犯规”**的,今日雪景放送来啦!每张都能做壁纸拿走不谢!
你瞧,昨夜雪落古城之时,在钟楼四周灯火的映衬下格外好看呢!
开始敲代码:
(1)素材。
(2)设置屏幕名称大小等。
os.chdir(r’C:’)
pygame.init() #初始化pygame
SIZE = (790, 430) #设置屏幕宽长,根据背景图片调整(或者调整图片)
bg_size = width, height = 300, 200 #设置开始和关闭界面窗口
bg_rgb = (255, 255, 255)
screen = pygame.display.set_mode(bg_size)
screen = pygame.display.set_mode(SIZE)
screen1 = pygame.display.set_mode(SIZE)
pygame.display.set_caption(“漫天雪花——小程序”)
(3)设置界面背景图。
bg = pygame.image.load(‘11.jpg’)#可随意修改自己喜欢的背景
(4)雪花飘落的位置设定。
snow_list = [] #雪花列表
for i in range(300):
x_site = random.randrange(0, SIZE[0]) #雪花圆心位置
y_site = random.randrange(0, SIZE[1]) #雪花圆心位置
X_shift = random.randint(-1, 1) #x轴偏移量
radius = random.randint(4, 6) #半径和y周下降量
(5)背景音乐的设定。
track = pygame.mixer.music.load(‘bgm.mp3’) # 加载音乐文件,可按照自己喜欢的修改
pygame.mixer.music.play() # 开始播放音乐流
pygame.mixer.music.fadeout(600000) #设置音乐多久慢慢淡出结束
play_image = pygame.image.load(“11.jpg”).convert_alpha() # 创建播放图片surface对象
pause_image = pygame.image.load(“11.jpg”).convert_alpha() # 创建暂停图片surface对象
pause_rect = pause_image.get_rect() #获取播放矩形框
print(pause_rect.width,pause_rect.height) #获取暂停矩形框
pause_rect.left, pause_rect.top = (width - pause_rect.width) // 2, (height - pause_rect.height) // 2
pause = False # 定义播放标志位
(6)附部分代码。
while True:
查找队列事件
for event in pygame.event.get():
查找点击关闭窗口事件
if event.type == pygame.QUIT:
sys.exit()
查找鼠标左右击事件
if event.type == MOUSEBUTTONDOWN:
检测鼠标左击是否按下
if event.button == 1:
pause = not pause
检测鼠标右击是否按下
if event.button == 3:
pause = not pause
检测键是否按下
if event.type == KEYDOWN:
检测是否为空格键按下
if event.key == K_SPACE:
pause = not pause
填充界面背景
screen.fill(bg_rgb)
空格控制播放和暂停,并显示相应的图片
if pause:
pygame.mixer.music.pause()
screen.blit(pause_image, pause_rect)
else:
pygame.mixer.music.unpause()
screen.blit(play_image, pause_rect)
screen1.blit(bg, (0, 0)) #图片背景
for i in range(len(snow_list)):
pygame.draw.circle(screen1, (255, 255, 255), snow_list[i][:2], snow_list[i][3]-3)
移动雪花位置(下一次循环起效)
snow_list[i][0] += snow_list[i][2]
snow_list[i][1] += snow_list[i][3]
if snow_list[i][1] > SIZE[1]: #判断雪花位置是否超出屏幕,是的话重设位置
snow_list[i][0] = random.randrange(0, SIZE[0])
snow_list[i][1] = random.randrange(0, SIZE[1])
pygame.display.flip() #刷新屏幕
clock.tick(20)
pygame.quit() #退出
效果如下——都是动态的画面滴
其实都是动态的下雪,但是我还不会录制所以只能截图是静止的。
效果图:
总结
这效果一出场效果真的是满分!谁用谁好看——嘿嘿嘿 ,绝美的画面,拿代码自己试试吧?
免费源码领取处:
如需完整的项目源码+素材源码基地见:#私信小编06#即可获取免费的福利!
你们的支持是我最大的动力!!**记得三连哦mua**欢迎大家阅读往期的文章哦
以上是关于Python小程序:你看?这千年难遇的雪景—简直“美到犯规” 满屏雪花飞舞 的主要内容,如果未能解决你的问题,请参考以下文章