2013-02-12 65 views
1

我有一個帶有TreeView和兩個按鈕(Gtk.ResponseType.CANCEL和Gtk.ResponseType.ACCEPT)的對話框窗口。當我按下Gtk.TreeView中的Enter時,我找不到如何激活ResponseType.ACCEPT按鈕。我在所需按鈕上設置cant_datault,在GtkDialog上設置set_default,但Gtk.TreeView沒有激活默認方法。在GtkDialog上激活default_button(python/Gtk3)

有什麼辦法可以做到這一點?

回答

1

我能找到的最快方法是在TreeView中使用「行激活」信號。只要您按Enter鍵,雙擊某個項目或按空格鍵就會激活此功能。

因此,例如:

treeview.connect("row-activated", lambda a, b, c: dialog.response(Gtk.ResponseType.ACCEPT)) 

我用lambda來創建匿名函數,但如果你有別的需要在同一時間運行,你可以換它的正常功能。

請注意,如果您以後也更改默認響應,則還需要更新此功能。