python - 仅适用于 tkinter 中的图像的面向对象接口中的初始化路径是什么?
问题描述
这个应用程序应该破坏旧框架以绘制新框架。
在我的情况下,框架是图像容器,我在 4 个不同的窗口中显示它们,但在示例中我只显示一个作为示例,从 Img_1
to 到的每个实例Img_60
都有自己的小部件,这些小部件都有自己的链接。现在我有两个问题,希望你能帮助我。
- 在销毁和绘制新框架时,由于前一框架的链接而存在冲突,我正在考虑停用它们但是''''''对我不起作用,我有点恶心。
- 我应该在哪里初始化图像?[150],由于性能问题,我问这个问题,因为我注意到窗口需要很长时间才能打开。我感谢所有花时间阅读的人,如果他们没有帮助我也没关系。谢谢。
from tkinter import *
class Crtl(Frame):
def__init__(self, master, **kwargs):
super().__init__(master, **kwargs)
self._frame_1 = None
self._open_1 = False
self.button1 = Button(self, text='pack 1',
command= lambda:self.windows(ImG)
self.button1 .pack()
def windows(self, var_1):
if not self._open_1:
self.top1 = Toplevel(self.master)
self.top1 .geometry('200x200')
container = var_1(self.top1)
if self._frame_1 is not None:
self._frame_1 .destroy()
self._frame_1 = container
self._frame_1 .pack()
self._open_1 = True
class ImG(Frame):
def__init__(self, master, **kwargs):
super().__init__(master, **kwargs)
self.img1 = PhotoImage(file= '60.png')
self.lbl1 = Label(self, image=self.img1)
self.master.bind("<Button-1>", self.img_2)
def img_2(self):
print('new image N°24')
root = Tk()
app = Ctrl(root, bg='black')
app .pack()
root .mainloop()
解决方案
推荐阅读
- javascript - Mapbox NavigationViewOptions 和 NavigationLauncherOptions
- javascript - 如何正确更新反应钩子状态中的数组
- javascript - 在加载 AJAX 回复之前显示项目
- npm - 无法使用 npm 安装 firebase CLI
- python - Python:如何根据条件制作组合字段
- java - openVPN 在 androidstudio 中无法在 Android 10 上运行
- r - if (is.double(data$x) && !has_groups(data) && any(data$x != data$x[1L])) { 中的错误:需要 TRUE/FALSE 的缺失值
- c++ - 单元测试回声功能
- javascript - 为什么 JavaScript 有盒装版本的原语?
- python - 网络摄像头 openCV 错误:(-215) ssize.width > 0 && ssize.height > 0 in function resize