GTK treeview添加'按键事件'信号

问题描述:

我想添加'按键事件'到树形视图。这是为了检测“删除”键,然后我可以从列表中删除一个项目。为了做到这一点我已经添加了以下信号:GTK treeview添加'按键事件'信号

g_signal_connect(G_OBJECT(_treeView), "key-press-event", G_CALLBACK(on_list_keypress), 0);

回调函数“on_list_keypress”当我按下任意键调用。然而,添加此信号后,我无法使用箭头,首页和结束键浏览消息。

我已经更换的g_signal_connect与g_signal_connect_after,现在我可以使用键盘通过信息浏览和在选择列表中的一个项目检测到任何按键。

添加处理程序Delete键后,现在当我按下Delete按钮将删除列表中的项目。但是,我也听到扬声器发出哔哔声(在我的个人电脑机箱扬声器中),就好像该键无效。

我想知道是否有什么办法可以防止蜂鸣声时,我按下了删除按钮?

注:如果我使用的g_signal_connect,然后按Delete键没有提示音。但是,禁用默认快捷键为树视图(如箭头向上,向下等)

谢谢

https://developer.gnome.org/gtk3/stable/GtkWidget.html#GtkWidget-key-press-event

你on_list_keypress函数返回一个布尔值。该布尔值表明信号处理是否应该继续或不是每个给定的事件。这样你就可以使信号链不可见的“删除”键事件