我正在使用TkInter显示Python2.7下的GUI对话框
我在主模块中定义了GUI,并尝试将逻辑分离到一个单独的模块中,然后导入
import sys
from Tkinter import *
import ttk
import dialoglogic
:
:
class processorDialog:
def _init__(self, top=None):
:
:
self.ButtonProcess = Button(top)
self.ButtonProcess.configure( state=DISABLED)
self.ButtonProcess.configure( text='''Start Process''')
现在在dialoglogic模块中,我需要将按钮的状态设置为NORMAL
我知道我需要
xxxx.ButtonProcess.configure(state=NORMAL)
但是我无法确定“xxxx”从子模块访问父模块中的TkI按钮小部件的秘密
如果答案已经出来了,我很困惑如何用谷歌搜索它,因为我没有得到任何结果(但似乎每个人都需要在某个时候去做;-))
任何指点都将不胜感激
在代码的某个地方,您正在创建一个
processorDialog
的实例。您需要保存该实例,并且该实例是您的“xxxx”:不过,纯粹从面向对象的角度来看,一个类修改另一个类的组件的内部状态有点不寻常。更好的解决方案是在
processorDialog
中创建一个方法来设置状态,并让代码调用它示例:
最后要注意的是,您的命名约定似乎是反向的,这使得您的代码很难阅读。类应该以大写字母开头(例如:
ProcessDialog
),实例变量应该以小写字母开头(例如:self.buttonProcess
)有关标准python约定的更多信息,请参见PEP8
相关问题 更多 >
编程相关推荐