python - 设置 URL gif 背景但不使用 Python 2 上的新框架

标签 python tkinter frame

我正在尝试创建一个包含主框架和三个打开新框架的按钮的程序。我能够获取 URL .gif 图像作为主框架的背景,但我很难在加载新框架时更改 URL .gif 图像。 我一直在努力弄清楚,但没有太多关于带有 URL .gif 背景的新框架窗口的信息。谁能帮我一把?谢谢

from Tkinter import*
import urllib
import base64
import Tkinter


def epl_Window():
    epl = Tk()
    epl.title("E")
    URL = "h"
    epl.a = urllib.urlopen(URL)
    raw_input = epl.a.read()
    epl.a.close()
    c = base64.encodestring(raw_input)
    image = PhotoImage(data=c)
    label = Label(image=image)
    label.pack()

最佳答案

由于与 epl_Window() 方法相关的两个原因,您的程序无法运行:

  • 您正在运行多个 Tk() 实例
  • 您没有将 label 附加到 epl

解决方案

您可以通过以下方式分别解决这 2 个问题:

  • 使用Toplevel()将行 epl = Tk() 更改为 epl = Tkinter.Toplevel()
  • label = Label(image = image) 更改为 label = Label(epl, image = image)

演示

应用上述修改后,您将得到这个(我点击了 3 个按钮):

enter image description here

奖金

  • 通过运行 import Tkinter as Tk 来遵循标准
  • 尊重这种实例化小部件的方式:label = Tk.Label(...)
  • 应用面向对象的概念
  • 关注PEP小号

关于python - 设置 URL gif 背景但不使用 Python 2 上的新框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37109532/

相关文章:

python - 全局变量和附加用于其他顶级函数

java - 在java文件中查找详细信息

JAVA:框架大小和图形对象居中

python - Scrapy - LinkExtractor 和设置 DEPTH_LIMIT 不起作用?

python - 操作数不能与形状(299,491)(299,491,3)一起广播。如何解决像素乘法?

python - 获取 Flask 请求中收到的数据

python - 在 tkinter 中使用阿拉伯语文本

python - macOS tkinter : how does filetypes of askopenfilename work

ios - iPad 中的方向框架不改变

python - python列表中的索引错误