python应用程序结构,动态加载模块

时间:2013-05-15 05:58:22

标签: python wxpython

我是python和wxPython的新手 我对以下的申请结构有疑问:
有一个基本模块,主模块 这个主要模块在开始时被调用 在这个模块中发生了自举和从一个组件切换到另一个组件 主模块显示主框架,上部区域有工具栏 在此工具栏中,有一个文本字段用于输入组件的代码,例如“todo”或“wiki”。
工具栏下方的区域在开头是空的。这是放置所选组件的gui的地方 我现在的问题是:
用户键入所选组件的代码,例如“todo” 然后我必须动态加载该组件的模块并放置它的视图 父(主)模块下部的模块。 我该怎么办?
非常感谢

1 个答案:

答案 0 :(得分:1)

创建关键字到模块名称的字典,然后通过在字典中搜索密钥来加载模块。

例如:

from interface.modules import Wiki, Search, Web, Default

modules = {'wiki': Wiki, 'search': Search, 'Internet': Web, 'browser': Web}

module_to_load = modules.get(user_input, Default)

view.load(module_to_load)