序
作为学了一年还没到的学渣,对于python连皮毛都没有触及的菜鸟,被要求老师做一个大作业,这个差不多就决定了我的期末成绩,作为一个上课划水下课划水的菜鸟的人来说。这还不如让我再去军训一周,但是没办法,想想那些比我还划水的同学,内心还是有些许欣慰的因为我至少还是听了一些。
但是大家都是第一次接触这种形式的作业都还是很迷惘,所以老师让我们看了一些大二学长的作品,没见识的我们只能大叫:“挖槽 牛逼” 他做了一款某农药的单挑界面(没有图片要不然肯定给你们看看),每个细节都抠的很到位,不仔细看,根本不知道是图片合成的。看到这种人我只能跪倒在他脚下,喊他一声大神。
到了写作业的时候,我毫无头绪,我甚至在淘宝上联系了一些代写程序的人,了解了一些价格,都是五百起步的,作为一个连自己都吃不饱的穷学生,我果断放弃了这个想法。之后我雄心壮志,自信满满,发誓自己也要写出他那样的大作业。第一天我就向老师要了那位大神的代码,在寝室钻研了一个晚上,我连开头都看不懂。所以我又要了那个男人的微信,准备当面请教。
当我见到他时,我知道没戏了,他眼里已经没有光了。我轻声说道:“学长能解释一下你写的这个代码吗”他点点头,便拿过我的电脑,接下来便是沉默,无尽的沉默。他看看我,看看代码。我看看他,看看代码。他看代码的样子,就像那位地铁上的老人
看他疑惑沉默的表情,我收起电脑,我知道我应该走了。接下来的五天我就写了三行代码
from tkinter import *import tkinter as tkimport pygame
眼看着就要到了交作业的时间,我放下来了脑中那不切实际的想法,给了自己两巴掌,为了让自己认清自己,由于打了五天的植物大战僵尸,我的思想已经别僵尸包围,我决定做一个关于僵尸的作业,说干就干,我就开始截取素材,在完成这个作业最难的不是写代码,而是截取素材,每个素材都是我在游戏中截图,并且通过自己截取的。每个图片的的位置我都试了很多遍,还有每个按钮的位置,从开始到结束一共选用了六十多张图片,二十几个按钮。
这个小程序用到的python知识主要是label组件,TKinter组件,windows窗口弹出,button组件,打包等
在写代码之前我们先要导入插件
from tkinter.messagebox import *from tkinter import *import tkinter as tkimport pygamewin = Tk()
button组件
创建按钮时,要设置很多的数据:字体,坐标,大小
代码展示:
button5 = Button(win, text = '铁桶僵尸',#按钮名 width = 8,#长 height = 1,#宽 activebackground = '#EEB4B4',#字体颜色 activeforeground = '#ADFF2F', bd = 4, font = ("楷书", 10),#字体 command = tietong )button5.place(x = 417, y = 130)#按钮位置
设置背景图以及大小
win.title('僵尸图鉴')win.geometry('900x560')win.maxsize(900,900)win.minsize(600,600)P1 = PhotoImage(file='僵尸3.png',width =900,heigh = 560)L1 = Label(win, imag=P1)L1.place(x=400,y=400)L1.pack()
定义图片并进行打包
def ganlan(): sb = tk.Toplevel() sb.geometry('350x470') sb.maxsize(351,600) sb.minsize(250,400) label2 = Label(sb, text = '别和我那些没用的,看我不啃你就完了') label2.pack() img_label = Label(sb, imag=glan).pack()glan = PhotoImage(file='橄榄头.png')
这是与橄榄球僵尸对应的按钮,需要设置好数据
每个按钮创建好之后,需要进行打包,不然的话不能实现互动。
并且每个按钮对应的图片需要导入,导入的图片和代码需要放在同一个文件夹,要不然运行代码时图片会找不到,也可以在导入图片时,加上图片的通道,不过那样太复杂我也不会。
button9 = Button(win, text = '橄榄球僵尸', width = 8, height = 1, activebackground = '#EEB4B4', activeforeground = '#ADFF2F', bd = 4, font = ("楷书", 10), command = ganlan )button9.place(x = 225, y = 210)
这些按钮的位置和大小,因为背景图的不同所以位置都是不同的,需要自己一个个试过去,我花了两天才把这些按钮调试到最佳位置。原代码就不放了,有几百行,只要图片与按钮的联动正常就行了。
Windows弹窗
在这里插入代码片
我吃饭了 剩下的 有空再更