GTK+ 2.0 Tutorial

<<< Previous

Углубленное изучение (Moving On)

Next >>>


Подробнее об обработчиках сигналов

Вот вариант объявления функции g_signal_connect().

gulong g_signal_connect( gpointer object, const gchar *name, GCallback func, gpointer func_data );

Обратите внимание, возвращаемое значение имеет тип gulong? Это ярлык идентификации вашей функции обратного вызова. Как упоминалось выше, вы можете вызывать любое количество сигналов на объект и все они будут созданы в порядке очереди прикрепления.

Данный ярлык, позволяет вам удалять сигнал при использовании:

void g_signal_handler_disconnect( gpointer object, gulong id );

При прохождении виджета вы можете отключить обработчик, вернув в функцию (signal_connect functions) пустое значение.

Вы также можете временно отключать обработчики сигналов из родственных функций g_signal_handler_block() и g_signal_handler_unblock().

void g_signal_handler_block( gpointer object, gulong id ); void g_signal_handlers_block_by_func( gpointer object, GCallback func, gpointer data ); void g_signal_handler_unblock( gpointer object, gulong id ); void g_signal_handlers_unblock_by_func( gpointer object, GCallback func, gpointer data );

<<< Previous

Home

Next >>>

Moving On

Up

An Upgraded Hello World