Python 加载模块上的参数切换
我已经用python编写了一个屏幕键盘,可以通过导入模块将其加载到框架或父窗口中Python 加载模块上的参数切换,python,tkinter,Python,Tkinter,我已经用python编写了一个屏幕键盘,可以通过导入模块将其加载到框架或父窗口中 import mykeys 然后我可以打电话过去 mykeys.thekeys(akey, accountI) 现在,我正在编写一个包含两个输入窗口小部件字段的脚本。不幸的是,我一次只能使用一个输入小部件字段,因为mykeys模块只接受一个输入字段引用或参数。我可以通过使用来检测单击的输入字段 parentW.bind("<FocusIn>", keyFocus) 当我点击这些字段时,它将打印相应
import mykeys
然后我可以打电话过去
mykeys.thekeys(akey, accountI)
现在,我正在编写一个包含两个输入窗口小部件字段的脚本。不幸的是,我一次只能使用一个输入小部件字段,因为mykeys模块只接受一个输入字段引用或参数。我可以通过使用来检测单击的输入字段
parentW.bind("<FocusIn>", keyFocus)
当我点击这些字段时,它将打印相应的打印语句。我希望使用这个“黑客”来重新加载模块,并为我试图输入的字段激活正确的参数,如
def keyFocus(event):
if accountS.focus_get() == accountI:
reload(mykeys)
mykeys.thekeys(akey, accountI)
elif accountS.focus_get() == accountIK:
reload(mykeys)
mykeys.thekeys(akey, accountIK)
不用说,它不起作用。解决我的问题最好的办法是什么?任何帮助都将不胜感激。除非mykeys模块的编写非常糟糕,否则就没有理由使用
重新加载
。您的函数可以更整洁,但它应该按照它的方式工作,因此我假设问题出在mykeys模块中。请制作一个包含我们可以测试的键盘。在mykeys中。这些键(akey,accountI)
,什么是akey
和accountI
?它们是小部件吗?功能?mykeys似乎是可靠的,除了我将其编码为一次只控制一个输入字段之外。reload
是我试图让模块“刷新”的东西,这样我就可以用新的输入小部件参数“重新启动”屏幕键盘,它是accountIK
@BryanOakley,akey
是框架,accountI
是输入小部件字段。你不需要重新加载任何内容。为什么您不能编写mykeys
来处理任何具有焦点的小部件?
def keyFocus(event):
if accountS.focus_get() == accountI:
reload(mykeys)
mykeys.thekeys(akey, accountI)
elif accountS.focus_get() == accountIK:
reload(mykeys)
mykeys.thekeys(akey, accountIK)