1

我在我的应用程序中添加了一个 MS Word 式组合框,以允许用户更改字体大小。这是设置代码:

sizeBox = gtk.combo_box_new_text()
for size in xrange(MIN_FONT_SIZE, MAX_FONT_SIZE+1):
    sizeBox.append_text(str(size))

def UpdateFontSize(c, box):
    newSize = box.get_active_text()
    if newSize:
        self.textViewer.SetFontSize(int(newSize))

print sizeBox.get_active_text()
sizeBox.connect("changed", UpdateFontSize, sizeBox)

运行我的程序并尝试更改组合框中的选定条目给了我这个:

None
OutNav.py:876: GtkWarning: gtk_combo_box_get_active_text: assertion `GTK_IS_COMBO_BOX (combo_box)' failed
   newSize = box.get_active_text()

所以 get_active_text 在封闭范围内工作正常,但是当我将 ComboBox 作为回调的参数提供时,它突然停止工作。谁能告诉我这里发生了什么?(我想使用 ComboBoxText 显然 gtk.combo_box_new_text 已被弃用,但由于某种原因它不在我的 PyGTK 2.24 发行版中)

4

0 回答 0