他们是当您停在某个物件(像按钮或其它物件)上几秒时, 会自动出现的一个小的文字视窗. 它们很容易使用, 因此我只解释一下, 而不给范例程式. 如果您想看看一些范例程式, 可参考GDK内的testgtk.c.
有些物件(像标签)无法与tooltips一起用.
第一个呼叫的函数会产生一个新的tooltip. 您只需要呼叫这个函数一次. GtkTooltip这个函数的返回值可用来产生许多个tooltips.
GtkTooltips *gtk_tooltips_new (void);
一旦您产生了一个新的tooltip, 您要设定到某个物件上, 只要呼叫这个函数即可.
void gtk_tooltips_set_tips (GtkTooltips *tooltips,
GtkWidget *widget,
gchar *tips_text);
第一个参数是您刚才产生的tooltip, 接著是您希望使用的物件, 然後是您希望显示的文字.
这里有个简短的范例:
GtkTooltips *tooltips;
GtkWidget *button;
...
tooltips = gtk_tooltips_new ();
button = gtk_button_new_with_label ("button 1");
...
gtk_tooltips_set_tips (tooltips, button, "This is button 1");
tooltip还有其它的一些函数. 我只简短的介绍一下.
void gtk_tooltips_destroy (GtkTooltips *tooltips);
销毁tooltips.
void gtk_tooltips_enable (GtkTooltips *tooltips);
使一套已失效的tooltips生效.
void gtk_tooltips_disable (GtkTooltips *tooltips);
使一套tooltips生效.
void gtk_tooltips_set_delay (GtkTooltips *tooltips,
gint delay);
设定要停留多少ms, tooltip才会出现. 内定值是1000ms, 即一秒.
void gtk_tooltips_set_tips (GtkTooltips *tooltips,
GtkWidget *widget,
gchar *tips_text);
改变一个tooltip的文字内容.
void gtk_tooltips_set_colors (GtkTooltips *tooltips,
GdkColor *background,
GdkColor *foreground);
设定tooltips的前景及背景颜色.