为了账号安全,请及时绑定邮箱和手机立即绑定

Tkinter不显示图像

Tkinter不显示图像

繁华开满天机 2021-03-13 11:10:54
我有以下代码: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文件的名称。但是它不显示图片,我也不知道为什么。有人知道为什么吗?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 185 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信