函数

GObjectsignal_connect_data

声明 [src]

gulong
g_signal_connect_data (
  GObject* instance,
  const gchar* detailed_signal,
  GCallback c_handler,
  gpointer data,
  GClosureNotify destroy_data,
  GConnectFlags connect_flags
)

说明 [src]

GCallback 函数连接到特定对象的信号。与 g_signal_connect() 类似,但允许为数据提供 GClosureNotify,该数据会在信号处理程序断开连接且不再使用时被调用。如果您需要此函数的 ..._after()..._swapped() 变体,请指定 connect_flags

此函数无法失败。如果给定的信号名称不存在,则会发出严重警告。当在 detailed_signal 中指定时,对“详细”字符串不执行验证,除了非空检查之外。

请参阅 信号文档 以获取更多详细信息。

此函数不能直接供语言绑定使用。

参数

instance

类型: GObject

要连接到的实例。

数据归函数的调用者所有。
detailed_signal

类型: const gchar*

形式为“信号名称::详细信息”的字符串。

数据归函数的调用者所有。
该值为以 NUL 结尾的 UTF-8 字符串。
c_handler

类型: GCallback

要连接的 GCallback

data

类型: gpointer

要传递给 c_handler 调用的数据。

该参数可以为 NULL
数据归函数的调用者所有。
destroy_data

类型: GClosureNotify

dataGClosureNotify

该参数可以为 NULL
connect_flags

类型: GConnectFlags

GConnectFlags 的组合。

返回值

类型: gulong

处理程序 ID(始终大于 0)。