g_signal_connect
来源:互联网 发布:linux 输入法 编辑:程序博客网 时间:2024/06/03 20:26
信号注册函数:
gulong g_signal_connect(
gpointer instance,
const gchar *detailed_signal,
GCallback c_handler,
gpointer data );
instance:信号发出者,可以认为我们操作的控件,如按下按钮,这个就为按钮指针
detailed_signal:信号标志,如"pressed"
c_handler:回调函数的名称,需要用G_CALLBACK()进行转换
data:给回调函数传的参数,gpointer 相当于C语言的 void *
返回值:注册函数的标志
如:
g_signal_connect(button, "pressed",G_CALLBACK(callback), NULL);
当按下button按钮时,就会自动调用回调函数callback(相当于处理中断任务),回调函数callback可以是任意函数,函数名字我们根据需要自行命名,如果不是库函数,我们还得定义这个回调函数,这里需要注意的是,回调函数的写法(返回值,参数),不是我们想怎么写就怎么写,帮助文档里已经规定好了回调函数应该如何写,如果不按规定来写,可能产生意想不到的错误。
GSignal是GStreamer的一个重要部分。它会让你在你感兴趣的事情发生时收到通知。信号是通过名字来区分的,每个GObject都有它自己的信号。
使用g_signal_connect()方法把“pad-added”信号和我们的源(uridecodebin)联系了起来,并且注册了一个回调函数。GStreamer把&data这个指针的内容传给回调函数,这样CustomData这个数据结构中的数据也就传递了过去。
这个信号是有GstElement产生的,可以在相关的文档中找到或者用gst-inspect方法来查到。
- g_signal_connect
- g_signal_connect 与 g_signal_connect_swapped
- g_signal_connect() 与 g_signal_connect_swapped()
- GTK+2.0之初始学习篇(二)—— g_signal_connect宏解释及HelloWorld
- 关于TensorFlow的MNIST数据集下载脚本input_data.py的坑
- U
- JS滚轮事件(mousewheel/DOMMouseScroll)了解
- VTK初级学习
- ROS 卡尔曼滤波
- g_signal_connect
- netty源码学习二(EventLoopGroup、EventLoop)
- U-net使用, 图像分割(边缘检测)
- 6.[Easy] Search Insert Position
- es 建索引时指定分片数据和副本数
- CAMWorks.For.Solid.Edge.2017.SP2.Win64 1DVD
- dubbo做服务治理,搭建服务提供者provider和消费者consumer
- jdbcTemplate执行插入语句带回主键值
- 关于setThrowingEnabled接口