Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个带有 TreeView 和两个按钮(Gtk.ResponseType.CANCEL 和 Gtk.ResponseType.ACCEPT)的对话框窗口。当我在 Gtk.TreeView 中按 Enter 时,我找不到如何激活 ResponseType.ACCEPT 按钮。我在所需按钮上设置了 cant_datault 并在 GtkDialog 上设置了 set_default 但 Gtk.TreeView 没有激活默认方法。
有什么办法可以做到这一点吗?
我能找到的最快方法是在 TreeView 中使用“行激活”信号。每当您按 Enter、双击某个项目或按空格键时,都会激活此功能。
例如:
treeview.connect("row-activated", lambda a, b, c: dialog.response(Gtk.ResponseType.ACCEPT))
我使用 lambda 来创建匿名函数,但如果您还有其他需要同时运行的东西,您可以将其换成适当的函数。
请注意,如果您将来还更改默认响应,则还需要更新此功能。