我在 python 中有一些代码,主要使用库 tkinter 进行 Hangman 游戏:
from tkinter import *
from PIL import ImageTk, Image
import time
pause=500
class Graphics(Canvas):
pics = {
'1':'backgrounds/step1.png',
'2':'backgrounds/step2.png',
'3':'backgrounds/step3.png',
'4':'backgrounds/step4.png',
'5':'backgrounds/step5.png',
'6''backgrounds/step6.png',
'7':'backgrounds/step7.png',
'8':'backgrounds/step8.png',
'9':'backgrounds/step9.png',
'10':'backgrounds/step10.png',
'11':'backgrounds/step11.png',
'12':'backgrounds/step12.png'
}
def __init__(self, master):
self.width=500
self.height=550
Canvas.__init__(self, master, bg='saddle brown', width=self.width, height=self.height, highlightthickness=0)
# self.step = '1'
# self.createImage(self.step)
def createImage(self,picName,size=()):
if size==():
size=(self.width,self.height)
filename = self.pics[picName]
self.im = Image.open(filename)
self.resizePic(size)
self.img=ImageTk.PhotoImage(self.im)
self.pic = self.create_image(self.width/2,self.height/2,anchor=CENTER,\
image=self.img)
def resizePic(self,size):
self.im = self.im.resize(size,Image.ANTIALIAS)
def nextStep(self):
if self.step=='6':
self.after(pause, self.master.welcome)
return
self.step = str(int(self.step)+1)
self.delete(self.pic)
self.createImage(self.step)
self.after(pause, self.nextStep)
就我的问题而言,不需要图片。无论如何,我希望在停顿 1/2 秒后出现“欢迎”“到”“刽子手”这些词。时机和一切都是正确的。
然而,不是三个画布正确地排列在“棕色矩形”旁边,而是其中一个奇怪地居中在它的右边,另外两个在它下面。为什么会这样?
UYOU
一只甜甜圈
相关分类