首页 > 代码库 > GTK常用控件之按钮( GtkButton )
GTK常用控件之按钮( GtkButton )
按钮在GUI里应用最为广泛,我们几乎能在所有的界面中看到按钮。
空按钮的创建(按钮上没有任何内容):
GtkWidget *gtk_button_new(void);
返回值:按钮指针
创建带文本内容的按钮:
GtkWidget *gtk_button_new_with_label (const gchar *label);
label:文本内容
返回值:按钮指针
设置按钮的文本内容:
void gtk_button_set_label(GtkButton *button,
const gchar *label);
button:操作的按钮
label:要设置的文本内容
获取按钮的文本内容:
const gchar *gtk_button_get_label(GtkButton *button);
button:操作的按钮
返回值:获取到的文本内容
控件使能设置:
void gtk_widget_set_sensitive(
GtkWidget *widget, gboolean sensitive);
widget:要操作的控件
sensitive:FALSE变灰,不允许相应响应;TRUE,正常响应
给按钮设置一张图片:
void gtk_button_set_image(GtkButton *button,
GtkWidget *image);
button:按钮
image:图片控件
获取按钮上的图片:
GtkWidget *gtk_button_set_image(GtkButton *button);l
button:按钮
返回值:图片控件
设置按钮透明背景色:
void gtk_button_set_relief(GtkButton *button,
button:按钮GtkReliefStyle newstyle);
newstyle: 枚举变量,GTK_RELIEF_NONE为透明
例子代码如下:
#include <gtk/gtk.h> // 头文件 int main(int argc, char *argv[]) { gtk_init(&argc, &argv); // 初始化 GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL); // 创建窗口 GtkWidget *hbox = gtk_hbox_new(TRUE, 10); // 水平布局容器 gtk_container_add(GTK_CONTAINER(window), hbox); // 把水平布局容器放入窗口 // 普通按钮 GtkWidget *normal_button = gtk_button_new_with_label("normal button"); const char *str = gtk_button_get_label(GTK_BUTTON(normal_button)); // 获取按钮的文本内容 printf("str === %s\n", str); gtk_button_set_label(GTK_BUTTON(normal_button), "change"); // 设置按钮的文本内容 gtk_container_add(GTK_CONTAINER(hbox), normal_button); // 把按钮放入水平布局容器里 // 给按钮设置一张图片 GtkWidget *button = gtk_button_new(); // 先创建空按钮 GtkWidget *image = gtk_image_new_from_file("1.png"); // 图像控件 gtk_button_set_image(GTK_BUTTON(button), image); // 给按钮添加图片 gtk_container_add(GTK_CONTAINER(hbox), button); // 把按钮放入水平布局容器里 gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE); // 按钮背景色透明 // 按钮使能设置(是否变灰),默认为使能TRUE,非使能FALSE //gtk_widget_set_sensitive(button, FALSE); gtk_widget_show_all(window); // 显示窗口控件 gtk_main(); // 主事件循环 return 0; }
程序运行效果图如下:
源代码下载请点此。
GTK常用控件之按钮( GtkButton )