如何让GtkEditableLabel的点击事件穿透到所在GtkColumnView行?
问题
使用Gtk.EditableLabel作为Gtk.ColumnView的单元格时,遇到以下选中行为问题:
- 键盘导航、点击单元格编辑、Tab导航功能均正常,但点击行内单元格区域无法选中该行
- 可编辑单元格(通过
label.set_editable(True)设置):点击后直接进入编辑模式,不会先选中对应行 - 不可编辑单元格:点击后无任何响应,仅能通过点击行内空白区域(单元格间隙、短标签未覆盖区域)选中该行
期望实现效果
- 点击不可编辑单元格时,直接选中该行
- 点击可编辑单元格时,先选中该行,再进入编辑模式
已尝试的无效方案
通过label.set_sensitive(False)模拟不可编辑单元格的选中行为,但会使元素呈现浅灰色禁用样式,不符合需求——该行整体可交互,仅该单元格不可编辑
技术提示
GTK4中已移除clicked信号,需借助Gtk.Gesture事件控制器实现需求
内容的提问来源于stack exchange,提问作者Glyph
相关产品推荐
相关产品推荐

