我有以下代码:from tkinter import *import urllibimport urllib.requestfrom bs4 import BeautifulSoupimport Pydeckimport sysfrom collections import defaultdictroot = Tk()name=""def buttonclicked(): name() picture()def name(): all_lists=[] #all lists text = inputfield.get() Pydeck.loadDatabase('DATABASE PATH') cardName = Pydeck.getCardsFromName(text) if not cardName == "": c = Pydeck.Card(cardName) tex.insert(END, c.name) level="\nLevel %s" % c.level + " " + c.attribute + " " + c.typestring tex.insert(END, level) atk="\nAtk: %s" % c.attack tex.insert(END, atk) defe="\nDef: %s" % c.defense tex.insert(END, defe) typestring='\n%s' %c.typestring desc='\n%s' %c.description seperator='\n--------------------\n' tex.insert(END, typestring) tex.insert(END, desc) tex.insert(END,seperator) #-- tex.see(END) # Scroll if necessary return c.cardIDdef picture(): text = inputfield.get() gifdir = "PICTURE FOLDERS PATH" Pydeck.loadDatabase('DATABASE PATH') cardName = Pydeck.getCardsFromName(text) if not cardName == "": c=Pydeck.Card(cardName) filename='{}.gif' .format(c.cardID) img = PhotoImage(file=gifdir+filename) can = Canvas(root) can.pack(fill=BOTH,side='top') can.config(width=img.width(), height=img.height()) can.create_image(2, 2, image=img, anchor=NW)tex=Text(root)tex.pack(side='right')inputfield = Entry(root)inputfield.pack(side='bottom')but = Button(root,text="Enter Name", command = buttonclicked) #Calls name functionbut.pack(side='bottom')text = inputfield.get()root.mainloop()好的,简而言之,该程序在Tkinter for Python 3.3中。它要求用户输入一个怪物的名称,然后在数据库中搜索该怪物并返回该怪物的属性,这是在name函数中完成的。我希望它显示我遇到麻烦的怪物的照片。因此,该picture函数采用属性之一,特别是cardID属性,并将其用作gif文件的名称。但是它不显示图片,我也不知道为什么。有人知道为什么吗?
添加回答
举报
0/150
提交
取消