【发布时间】:2018-06-08 19:28:23
【问题描述】:
我希望在 GTK 中创建一个组合框,用户在第一个框中选择的选项会更改下一个框中的可用选项;即,如果第一个框包含制造商名称,则下一个框将包含该制造商的产品,进一步举例说明如果我选择 bmw,我只能选择 bmw 制造的汽车。我知道基本结构应该是什么样子,但是我不确定如何让信号相互触发。如果有人可以提供完美的基本代码或伪代码。
【问题讨论】:
标签: python python-2.7 gtk3 pygobject
我希望在 GTK 中创建一个组合框,用户在第一个框中选择的选项会更改下一个框中的可用选项;即,如果第一个框包含制造商名称,则下一个框将包含该制造商的产品,进一步举例说明如果我选择 bmw,我只能选择 bmw 制造的汽车。我知道基本结构应该是什么样子,但是我不确定如何让信号相互触发。如果有人可以提供完美的基本代码或伪代码。
【问题讨论】:
标签: python python-2.7 gtk3 pygobject
最简单的解决方案是拥有一个 manufacturer 模型和多个 product 模型。更改制造商时,组合框将发出"changed" 信号。在它的处理程序中,您可以使用set_model() 方法为第二个组合框设置适当的模型。
【讨论】:
您可以在 14.1 中找到一个简单的示例。在提供的链接: http://python-gtk-3-tutorial.readthedocs.io/en/latest/combobox.html
【讨论】: