我使用GtkTable制作了一个表格,并在该表格中附加了linux中的小部件。
在每个小部件上都会显示一个视频。现在我想让所有的小部件都可以点击,这样我就可以在全屏模式下显示被点击的视频。
应该使用什么函数来使小工具可点击。
发布于 2012-02-08 17:57:03
不知道您使用的是哪个子部件。当鼠标单击(按下然后松开)时,许多小部件都会发出信号button-release-event。你可以听到这样的信号:
gboolean toggle_play(GtkWidget *widget, GdkEventButton *event, gpointer data)
{
// play or pause the video of the widget
return TRUE; // or FALSE if you connected more than one handlers to this signal
}
g_signal_connect(widget, "button-release", G_CALLBACK (toggle_play), data);其中widget是播放视频的子部件,它将作为toggle_play的第一个参数传递。data是要作为toggle_play的第三个参数传递的额外数据,如果不需要,可以简单地将其设置为NULL。
您可能需要向子小部件的事件掩码添加GDK_BUTTON_RELEASE_MASK:
gtk_widget_add_events (widget, GDK_BUTTON_RELEASE_MASK);发布于 2012-02-07 19:08:55
也许widget GtkEventBox会对你有所帮助。
https://stackoverflow.com/questions/9174703
复制相似问题