以下gtk+编程例子是来自书籍《实用技术:开发Linux应用——用GTK+和GDK开发Linux图形用户界面应用》第113页的内容——进度条
例子程序是将110-115页纸内容的代码拼合而成的,已经修改许多地方才能在gtk3.0编译通过,比较难理解就是UpdateProgressTimer函数中nValue值对应UpdateProgress函数中的pos值,UpdateProgressTimer函数中数字100值对应UpdateProgress函数中的len值,这个要使用gdb调试才得知的,在gtk3.0中已经不使用gtk_progress_bar_new_with_adjustment,总体来说这个例子使用多个函数块,左右绕转,程序思路跳转比较大,进度条的最小值是0,最大值是1,中间增量是0.01,就是100分之1,100分之2 …… 100分之99,分母100就是len值,分子就是pos值从1变到99
在openSUSE-Leap-15.3-DVD-x86_64的gnome3.34.7桌面环境下编译的,其中pkg-config --cflags --libs gtk±3.0两边有反引号括起来的
ruhong@localhost:~/gtk> gcc -g -Wall page113.c -o page113 pkg-config --cflags --libs gtk+-3.0
> mistake.text 2>&1 ; gedit mistake.text
ruhong@localhost:~/gtk> ./page113
/*
* Application code begins here.
*/
# include <gtk/gtk.h>
typedef struct _typProgressData {
GtkWidget *pro