我有以下代碼: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中。它要求用戶輸入一個怪物的名稱,然后在數(shù)據(jù)庫中搜索該怪物并返回該怪物的屬性,這是在name函數(shù)中完成的。我希望它顯示我遇到麻煩的怪物的照片。因此,該picture函數(shù)采用屬性之一,特別是cardID屬性,并將其用作gif文件的名稱。但是它不顯示圖片,我也不知道為什么。有人知道為什么嗎?
添加回答
舉報
0/150
提交
取消