如何使用wxPython构建交互式对话框?

时间:2014-06-12 05:44:31

标签: wxpython arcgis arcpy

我在右边的对话框中显示了一个表格,右边有几个选项 - 我想在ArcGIS pythonaddins框架中使用wxpython重新创建它。第一项是在带有向下滚动选项的对话框中显示表。第二件事是改变" Cond。"基于"更新"中的任何选项的列列 - 例如,如果我点击' G'然后" Cond。"将改为“好”。随后将改变A' B' C' C'和' D'值(这就是我所说的互动)。最后,我想将此修改后的表写入文本文件。我可以创建一个对话框,但显示具有交互功能的表格超出了我的范围。任何建议都会非常感激。

table

1 个答案:

答案 0 :(得分:1)

如果我是你,我会从获得wxPython演示包开始。该演示允许您查看99%的小部件示例,包括代码。它还包括一些体面的示例应用程序文件夹。

我将用于表的主要小部件可能是报告模式中的某种类型的ListCtrl。这个控件有几个不同版本,从简单的wx.ListCtrl到wxPython 2.9+中的DVC版本到纯Python UltimateListCtrl。无论您选择哪一个,都需要监控特定列中的更改。如果该列中的单元格发生更改,则可以更改其他单元格的值。

我可能会有一个将单个字母值映射到完整字符串值的字典。

理论上,您可以使用wx.grid.Grid,但我发现该小部件使用起来更复杂。

要将数据保存到磁盘,您可能需要迭代列和单元格并提取数据,然后以您选择的格式保存。我认为CSV文件就足够了。 Python提供了一个 csv 模块,您可以将其用于此类事件。