GTK+ 2.0 Tutorial

<<< Previous

Next >>>


Timeouts, IO и Idle Functions

Время ожидания (Timeouts)

Вас наверное интересует как GTK выполняет работу в gtk_main. Для этого есть несколько опций.  Используя следующую функцию Вы можете создать функцию времени ожидания, которая будет вызываться каждую миле секунду (milliseconds).

gint gtk_timeout_add( guint32 interval, GtkFunction function, gpointer data );

Первый аргумент кол-во миле секунд между вызовами вашей функции. Второй аргумент - ваша функция которую вы хотите вызывать, а третий - данные передаваемые в функцию обратного вызова.  Возвращаемое значение - целочисленное "tag", которое может использоваться, чтобы остановить время ожидания, вызвав:

void gtk_timeout_remove( gint tag );

Вы так же можете остановить время ожидания вернув 0 (zero) или FALSE из вашей функции обратного вызова. Очевидно, что для продолжения нужно вернуть не ноль (non-zero), т.е. TRUE.

Декларация вашего обратного вызова:

gint timeout_callback( gpointer data );

<<< Previous

Home

Next >>>

Setting Widget Attributes

 

Monitoring IO