Previous Next Contents

7. Tooltips物件

他们是当您停在某个物件(像按钮或其它物件)上几秒时, 会自动出现的一个小的文字视窗. 它们很容易使用, 因此我只解释一下, 而不给范例程式. 如果您想看看一些范例程式, 可参考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的前景及背景颜色.


Previous Next Contents