//1 << 0 是把1 按2进制 左移0位,结果还是 1 ,2进制 0000 0001
//1 << 1, 是把1 按2进制 左移1位,结果是2,2进制 0000 0010
enum
{
GTK_ACCEL_VISIBLE = 1 << 0,
GTK_ACCEL_LOCKED = 1 << 1,
GTK_ACCEL_MASK = 0x07
}
//等价于:
#define GTK_ACCEL_VISIBLE (1 << 0)
#define GTK_ACCEL_LOCKED (1 << 1)
#define GTK_ACCEL_MASK 0x07
typedef enum
{
GTK_ACCEL_VISIBLE ...
GTK_ACCEL_LOCKED ...
GTK_ACCEL_MASK ...
} GtkAccelFlags;
//定义变量类型: GtkAccelFlags
//
//该类型变量正确的取值 只有 GTK_ACCEL_VISIBLE,GTK_ACCEL_LOCKED,GTK_ACCEL_MASK。
//
//其它值是错误的。
//
//
//顾名思义:
//
//GtkAccelFlags GTK 进入标志
//
//GTK_ACCEL_VISIBLE 可见 0000 0001
//
//GTK_ACCEL_LOCKED 锁定 0000 0010
//
//GTK_ACCEL_MASK 屏蔽值 0000 0111
//应用例子:
GtkAccelFlags flag1;
flag1 = 。。。;
if (flag1 == GTK_ACCEL_VISIBLE){
....
} else {
.....
}