定制linux中的Gtk theme<一>如何设置窗口按钮的多态效果

时间:2022-09-10 01:11:48

GTK主题之个人理解:

  GTK 主题引擎(包含代码所需的图形元素) +  主题配置文件(gtkrc文件)+ 数据资源文件(如图片等)    三者所呈现给用户的视觉风格效果

GTK拥有一套大量的widget集合,如按钮,滚动条,编辑框等,每一种组件的属性都可以单独进行配置;  所有的widget由GtkWidget派生出来,Gtkwidiget包括GnomePanel /GtkButton /GtkCheckButton /GtkColorButton /GtkComboBox /GtkComboBoxEntry /GtkEntry /GtkFrame /GtkMenu /GtkMenuBar /GtkMenuItem /GtkNotebook /GtkProgressBar /GtkRadioButton /GtkScale /GtkSpinButton /GtkStatusbar /GtkTreeView /StyleProperties /SymbolicColors。 如果没有针对特定组件定义主题效果,GtkWiget的风格则该组件的默认效果。

组件的状态包括五种:

NORMAL:鼠标没有覆盖,点击的状态
        PRELIGHT:鼠标在组件之上
        ACTIVE:鼠标被按下或点击的状态,
        INSENSITIVE:不能被激活,或点击的状态
        SELECTED:被选对象可以带好多属性

组件的属性一般包括如下几种:

fg:设置一个构件的前景色
        bg:设置一个构件的背景色
        text:可编辑文本构件的前景色
        base:可编辑文本构件的背景色
        bg_pixmap:显示像素图的构件的背景色
        font_name:设置字体风格
        xthickness:设置左右边界的宽度
        ythickness:设置上下边界宽度

1、菜单栏按钮

2、工具栏按钮

3、地址栏切换按钮