我有一个程序,它具有非常复杂的数字运算逻辑和相当多的配置参数。该程序(几乎)是非交互式的,并通过命令行参数和配置文件进行配置。
我被要求在此程序中添加GUI。当然,此GUI必须包含具有所有必需参数的配置屏幕(选项卡,无论如何)。我以前从未做过任何严肃的GUI,所以我不确定如何处理这个任务。
当然,可以加载配置文件并创建所需的小部件。但是,使用这种方法,小部件标签将是“技术性的而不是信息性的”。我正在寻找一种存储人类可读参数名称的方法,以及工具提示只为维护参数,标签和工具提示文本带来的最小额外负担。使用自制格式存储此信息与默认配置文件是一种好方法吗?
FWIW我在wxPython中编写GUI,我的配置文件是ConfigObj个文件。该程序将由我的团队成员使用,因此不会考虑恶意用户场景。
答案 0 :(得分:0)
通常的方法使用几个部分。
首先,您拥有构建UI的代码。这将读取包含所有标签和按钮以及工具提示的文本的文件,并将它们放在正确的位置。
第二部分是读取和写入配置文件的代码。您希望在配置文件中使用技术密钥(=仅对某些人可读),以避免在将新语言添加到UI时出现问题(当有人将UI转换为德语时,您不希望更改配置键)。 / p>
因此每个UI元素都有一个技术ID。在文本配置中,您将使用ID.label
和ID.tooltip
。在“真实”配置(a.k.a首选项)中,您将使用ID将选定值映射到UI元素。