GTK+ 2.0 教学-GTK rc 档案的格式

以下范例说明了 rc 档案的格式。它取自 GTK 套件中名为 testgtkrc 的档案中,但我增加了一些注解和内容。你也许希望在自己的应用程式中包含这些注解以有助于用户在使用过程中进行小调整。

有几个指令用于改变一个元件的属性。

  • fg – 设置元件的背景色。
  • bg – 设置元件的前景色。
  • bg_pixmap – 设置元件的背景为一幅像素图。
  • font – 设置元件使用的字型。

另外,一个元件可以有几种状态,你可以为每种状态设置不同的颜色,图案和字型。这些状态是:

  • NORMAL – 元件的一般状态,如滑鼠不位于元件上方,键未按下时元件所处的状态。
  • PRELIGHT – 当滑鼠移到元件上方,在此状态下定义的颜色生效。
  • ACTIVE – 当处于元件上的滑鼠键被按下或点击时,该元件被启用,相应的属性值将生效。
  • INSENSITIVE – 当元件被设置为不敏感(insensitive)时,它不能被启用,相应属性值起作用。
  • SELECTED – 选择一个物件时,取相应的属性值。

当用”fg”和”bg”关键字设置元件的颜色时,其格式是:

fg[<STATE>] = { Red, Green, Blue }

这里STATE是前述状态(PRELIGHT,ACTIVE,…)之一,Red,Green,Blue是范围0-1.0间的数值, {1.0,1.0,1.0}表示白色。这些数值必须是浮点数,否则将被存为0,因此写为”1″的数值是无效的,应写为”1.0″.0值写为”0″却不错,因为即使系统认不出也没关系。所有系统不认识的数值都会被设为0。

bg_pixmap除了用一个档案名取代颜色名外和以上格式很相似。

pixmap_path是一个由‘:’分隔开的路径表。当搜索你指定的图案时会使用这些路径。

字型命令简单的就是:

font = "<font name>"

唯一困难的是描述字型的字串部分。用 xfontsel 或类似工具会有帮助。

“widget_class” 设置一元件的类别风格。这些类别在元件概述中的类别组织里列出。

“widget” 指令把一个特别命名的元件集设置为一个要求的风格,覆盖所有已有的风格。这些元件使用 _widget_set_name() 函式呼叫在应用程式中注册。这样你可以设置任一组元件的属性,而不是设置整个元件类别的属性。我请求你为这些特定名称的元件写好文件,用户可能要定制它们。

当使用关键字parent作为属性值时,这个元件将继承它的父元件的属性。

定义一个风格时,可能会将以前定义风格的属性值分配给新定义的风格。

style "main_button" = "button"
{
  font = "-adobe-helvetica-medium-r-normal--*-100-*-*-*-*-*-*"
  bg[PRELIGHT] = { 0.75, 0, 0 }
}

这个范例用”button元件的风格创建了一个新的 “main_button” 元件的风格,只改变 “button” 元件风格中的 font 属性和 prelight 背景色属性。

当然,许多属性不能应用在所有元件上,按常识这是不难分辨的。而任何能在一个元件上起作用的东西,都应能作为它的属性。

Comments are closed.