gpt4 book ai didi

python - Tkinter根窗口类继承,在__init__中添加widgets

转载 作者:太空宇宙 更新时间:2023-11-04 02:42:55 26 4
gpt4 key购买 nike

我从 Tkinter 开始,试图制作一个简单的根窗口,在窗口的上侧有一个水平按钮栏,在窗口的其余部分有一个条目列表。

在逐步调试时,我发现这一行:

            _button_widget = tk.Button(self.button_bar, title=_button_label)

使 init 方法返回到主要关闭窗口。旁注:我看不到任何引发的异常(使用 Visual Code Studio 作为 IDE)和 Python 27。如果我删除按钮部分,则会创建并显示窗口。

ma​​in.py:

# -*- coding: utf-8 -*-

import display_commander

def main():
dc = display_commander.DisplayCommander()
dc.mainloop()

if __name__ == "__main__":
main()

display_commander.py:

# -*- coding: utf-8 -*-

import Tkinter as tk

class DisplayCommander(tk.Tk, object):

def __init__(self):
super(DisplayCommander, self).__init__()

self.geometry("350x150+150+150")

# Button bar
self.button_bar = tk.Frame(self)
self.button_bar.config(bg="red")
self.button_bar.pack()

# Buttons
self.buttons = []
for _button_label in ['New Window', 'Delete Window', 'Save Config', 'Load Config']:
_button_widget = tk.Button(self.button_bar, title=_button_label)
_button_widget.pack()
self.buttons.append([_button_label,_button_widget])

# Window List
self.window_list = tk.Frame(self)
self.window_list.config(bg="yellow")
self.window_list.pack()

最佳答案

title参数不能用于按钮,用text代替:

_button_widget = tk.Button(self.button_bar, text=_button_label)

(我不确定你想如何在你的代码中使用 self.buttons 列表,也许你有更好的字典选择?它可以更容易地找到/匹配一个小部件,如果你不需要排序结构存储。)

self.buttons = {}
[...]
self.buttons[_button_label] = _button_widget

关于python - Tkinter根窗口类继承,在__init__中添加widgets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45930753/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com