Python,Tkinter-未定义根

隔离

我有一个下面的类代码,当从中if __name__ == '__main__':调用时,它可以正常工作,但是当我从另一个.py文件中调用它时,它会吐出错误。抱歉,如果这是我的基本错误,但我尝试了很多东西,但似乎没有任何效果,真的希望获得帮助!

错误:

File "c:\Users\...\test.py", line 6, in <module>       
    app = Screenshot(root)
  File "c:\Users\...\Screenshot.py", line 18, in __init__
    self.master_screen = Toplevel(root)
NameError: name 'root' is not defined

班级:

import time
from tkinter import Toplevel, Canvas, Frame, BOTH, YES, Tk
import pyautogui
import datetime

class Screenshot():
    
    def __init__(self, master):
        self.master = master
        self.rect = None
        self.x = self.y = 0
        self.start_x = None
        self.start_y = None
        self.curX = None
        self.curY = None
        
        self.master_screen = Toplevel(root)
        self.master_screen.title("Fenify")
        self.master_screen.attributes("-transparent", "blue")
        self.picture_frame = Frame(self.master_screen)
        self.picture_frame.pack(fill=BOTH, expand=YES)
        self.createScreenCanvas()

    #TakeScreenshot
    def takeBoundedScreenShot(self, x1, y1, x2, y2):
        ...
    #Window
    def createScreenCanvas(self):
        ...
    #Controls
    def on_button_press(self, event):
        ...

    def on_button_release(self, event):
        ...
    def on_right_click(self, event):
        ...
    def on_move_press(self, event):
        ...
    #Exit
    def exit_screenshot(self):
        ...

if __name__ == '__main__':
    root = Tk()
    app = Screenshot(root)
    root.mainloop()

从另一个类调用的示例:

import tkinter
from Screenshot import Screenshot


root = tkinter.Tk()
app = Screenshot(root)
root.mainloop()
熊熊

您想将的父/母设置Toplevelself.master而不是rootroot没有在Screenshot的范围内定义,但输入参数master确实指向它。

self.master_screen = Toplevel(self.master)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

全局名称“未定义根”,tkinter,python

来自分类Dev

pycharm 中的 Tkinter 错误:未定义根

来自分类Dev

Tkinter按钮未定义

来自分类Dev

Python,Tkinter:NameError:未定义全局名称“ Combobox”

来自分类Dev

Python和tkinter:NameError:未定义全局名称“ roomChange”

来自分类Dev

Python,Tkinter:NameError:未定义全局名称“ Combobox”

来自分类Dev

Python 和 tkinter:NameError:未定义名称“askyesno”

来自分类Dev

Python类未定义?

来自分类Dev

未定义Python变量

来自分类Dev

Python 函数未定义

来自分类Dev

未定义变量(Python)

来自分类Dev

python self 未定义

来自分类Dev

Tkinter:NameError:名称'equation'未定义

来自分类Dev

Tkinter的麻烦-未定义名称框架

来自分类Dev

未定义的名称按钮-tkinter

来自分类Dev

Tkinter - NameError:未定义名称“TopLevel”

来自分类Dev

使用GUI按钮定义功能(Python \ Tkinter)_入门级_(问题:“功能;未定义”)

来自分类Dev

未定义全局变量-Python

来自分类Dev

Python:未定义全局名称“ maximum”

来自分类Dev

未定义Python Pandas figsize

来自分类Dev

Python:NameError:未定义名称“ Stack”?

来自分类Dev

Python gdal未定义符号GDALRasterBandGetVirtualMem

来自分类Dev

在python中使用未定义的变量

来自分类Dev

python全局名称未定义

来自分类Dev

Python NameError,变量“未定义”

来自分类Dev

python className未定义NameError

来自分类Dev

SWIG Python未定义符号错误

来自分类Dev

未定义ThreadPoolExecutor [python3]

来自分类Dev

未定义Python模块功能