编辑:我指的是 OSX 应用程序菜单,其中包含“关于”和“首选项”菜单项(以及其他菜单项)。
对于知道正确搜索词的人来说,也许这将是另一个简单的过程,但是在花费数小时在 IDLE 中跟踪代码并搜索网络之后,我还没有完全能够将这些点联系起来。
我正在尝试替换 Python 中的标准“关于”菜单。 IDLE 至少部分地做到了这一点;菜单仍然命名为“About Python”,但它显示 IDLE About 窗口。当从 Wing IDE(X11 下)运行时,idle 不会显示其“关于”窗口,并且由于某种原因 IDLE 不想调试idle.py...
我已经能够用“About MyProgramName”替换“About Python”,但我要么得到通常的“tk About”窗口,要么根本没有关于窗口。 IDLE 定义了一个虚拟事件来将控制传递给它的“关于”窗口,而我却被困在如何定义连接到菜单选项的虚拟事件上。
所以我有root.bind('<<about-myprogram>>', about_dialog)
,但是我该如何连接它呢? to.add_event() 需要一个序列...
有什么建议么?
如果您正在讨论构建一个菜单栏,菜单上有一个“帮助”条目,并且“帮助”菜单上有一个“关于”条目,那么这是非常基本的内容,并且有很好的示例。
- http://effbot.org/tkinterbook/menu.htm http://effbot.org/tkinterbook/menu.htm
- http://www.tkdocs.com/tutorial/menus.html http://www.tkdocs.com/tutorial/menus.html
其中任何一个都将清楚地解释如何为您的应用程序创建顶级菜单。如果你在谈论其他事情,那么请澄清一下。
我搜索了::tk::mac::ShowPreference
在我的 C:\Python27 目录下的源代码中,并运行了文件 C:\Python27\Lib\idlelib\macosxSupport.py 中的代码,它看起来正在做你想做的事情(或者至少足够接近,你可以适应它)。
def config_dialog(event=None):
from idlelib import configDialog
root.instance_dict = flist.inversedict
configDialog.ConfigDialog(root, 'Settings')
root.createcommand('::tk::mac::ShowPreferences', config_dialog)
我无法在 createcommand() 方法上找到任何好的文档,但我确实确认它存在于root
我创建的小部件root = Tk()
。在寻找更多信息时我也遇到了这个很少讨论 http://mail.python.org/pipermail/tkinter-discuss/2009-April/001893.html就此主题而言。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)