当前位置: 技术问答>linux和unix
【GTK】Treeview -- 如果获取在column header上的右键事件?
来源: 互联网 发布时间:2016-05-20
本文导语: g_signal_connect(GTK_TREE_VIEW(view), "button-press-event", (GCallback)onButtonPressed, popup_menu); 上面这句,可以捕获treeview框框内部的鼠标时间,但似乎不能捕获发生在header上的鼠标事件,怎么办呢? ...
g_signal_connect(GTK_TREE_VIEW(view), "button-press-event",
(GCallback)onButtonPressed, popup_menu);
上面这句,可以捕获treeview框框内部的鼠标时间,但似乎不能捕获发生在header上的鼠标事件,怎么办呢?
(GCallback)onButtonPressed, popup_menu);
上面这句,可以捕获treeview框框内部的鼠标时间,但似乎不能捕获发生在header上的鼠标事件,怎么办呢?
|
header是由GtkTreeViewColumn负责的,因为该结构不是GtkWidget的继承,所以不能响应鼠标右键单击,虽然它可以响应click信号,但是我觉得不能满足你的要求。
还有一种变通的方法(没有试过),设置GtkTreeviewColumn的widget属性,然后由这个widget响应鼠标右键单击。我不确定能否正常工作。
还有一种变通的方法(没有试过),设置GtkTreeviewColumn的widget属性,然后由这个widget响应鼠标右键单击。我不确定能否正常工作。
|
要看看源代码,看看它那个框框是用的window,dialog还是fixed之类。如果框框内部用到drawing area那就直接调整它的区域大小。
看看header用的是什么widget然后给它添加回调