你也许想知道如何让 GTK 在gtk_main中做有用的工作。你有几种选择。用下面的函数,你可以创建一个超时函数,每隔一段时间该函数被调用。
gint gtk_timeout_add( guint32 interval, GtkFunction function, gpointer data ); |
第一个参数是以毫秒为单位的你的函数被调用的时间间隔。第二个参数是你想调用的函数。第三个参数是传递给回调函数的数据。返回值是一个整型的标记,该标记可以用于停止超时,用函数:
void gtk_timeout_remove( gint tag ); |
你也可以通过从回调函数返回零或 FALSE 来停止超时函数。很显然,如果你想让你的函数继续被调用,应该返回一个非零值,如 TRUE。
回调函数应该声明为:
gint timeout_callback( gpointer data ); |