我的公司正在使用 Python 2.6(糟糕,我知道,但这是我的限制)。我需要制作一个包含 ComboBox 的小 GUI。我选择了 Tix,因为这就是我所拥有的——不允许抢其他任何东西。
无论如何,我想将 ComboBox 的标签设置在顶部。根据http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixComboBox.htm的文档,如果我在 ComboBox 构造函数中使用“labelside”作为参数,它应该将标签移动到顶,如我所愿。
不幸的是,当我这样做时,它给了我一个奇怪的错误:
_tkinter.TclError: cannot assigned to static variable "-labelside"
上下文:这是在继承自Tix.Frame
. 第一个代码示例完美运行,另一个则没有。
我的构造函数(不包括'labelside')如下所示:
combobox = Tix.ComboBox(self,
label="Available files: ",
selectmode='immediate',
dropdown=0,
editable=0,
variable=selectedfile,
options='listbox.height 5')
正如预期的那样,它完美地工作。我的窗口中有一个不错的 ComboBox。然而,标签在左侧——不是我想要的。
所以,我试试这个:
combobox = Tix.ComboBox(self,
label="Available files: ",
labelside='top',
selectmode='immediate',
dropdown=0,
editable=0,
variable=selectedfile,
options='listbox.height 5')
那时它给了我错误。我在互联网上寻找答案,但只发现有相同未回答问题的用户:为什么会发生这种情况?看来我正确地遵循了文档。
我也尝试替换Tix.TOP
,top
它给了我同样的错误。
任何帮助或想法将不胜感激!