自己的图书馆与全球 tkinter window

own library with global tkinter window

我想创建一个库来修改我在脚本中创建的 tkinter window。 我希望它在一个库中,以便我的主脚本不会太大,但是当我调用我的库时,好吧,它不起作用。

Here is the main script:
import my_lib
from tkinter import *

global my_window
my_window = Tk()

global my_button
my_button = Button(my_window, "This is a button", command = my_lib.menu)

和图书馆:

def menu():
    my_button.destroy()

    global menu_button
    menu_button = Button(my_window, "Button", command = print("You hit the button"))

启动主脚本时出现以下错误:

File "main_script.py, line 8, in <module>
 my_button = Button(my_window, "This is a button", command = my_lib.menu)
File "C:\Program Files\Pytonh 3.4\lib\tkinter\__init__.py", line 2192, in __init__
  Widget.__init__(selfn master, 'button', cnf, kw)
File "C:\Program Files\Pytonh 3.4\lib\tkinter\__init__.py", line 2113, in __init__
  cnf = _cnfmerge((cnf, kw))
File "C:\Program Files\Pytonh 3.4\lib\tkinter\__init__.py", line 105, in _cnfmerge
  cnf.update(c)
ValueError: dictionnary update sequence element #0 has length 1; 2 is required

替换:

my_button = Button(my_window, "This is a button", command = my_lib.menu)

作者:

my_button = Button(my_window, text="This is a button", command = my_lib.menu)

(和你的 "lib" -in python 模块中的相同是常用术语)

http://effbot.org/tkinterbook/button.htm#Tkinter.Button-class 用于按钮文档。