使用组件 |
|
|
|
| 自定义组件 > 使用样式自定义组件的颜色和文本 > 为成组的组件设置自定义样式 | |||
您可以创建自定义样式声明,从而为 Flash 文档中成组的组件指定一组独特的属性。除了 _global 对象的 style 属性(在设置全局样式中讨论,该属性确定整个 Flash 文档的默认样式声明)外,_global 对象还有一个 styles 属性,该属性是可用的自定义样式声明的列表。这样,您可以创建一个样式声明,作为 CSSStyleDeclaration 对象的一个新实例,为其指定一个自定义样式名称,然后将它放置在 _global.styles 列表中。然后,指定该样式的属性和值,并将该样式名称指定应具有相同外观的组件实例。
注意,在将样式名称指定给组件实例时,该组件只对它所支持的样式属性有反应。有关每个组件所支持的样式属性的列表,请参阅"组件语言参考"中的各个组件条目。
要更改自定义样式格式,请使用以下语法:
_global.styles.CustomStyleName.setStyle(propertyName,propertyValue);
自定义样式设置具有高于类样式设置、继承的样式设置和全局样式设置的优先级。有关样式优先级的列表,请参阅在同一个文档中使用全局、自定义和类样式。
为成组的组件创建自定义样式声明: 有关详细信息,请参阅向 Flash 文档中添加组件。
此示例使用三个按钮组件,实例名称分别为 a、b 和 c。如果使用不同组件,请在"属性"检查器中为它们指定实例名称,并在第 8 步使用这些实例名称。
import mx.styles.CSSStyleDeclaration;
var new_style:Object = new CSSStyleDeclaration();
_global.styles 列表中,命名您的样式声明,如"myStyle",并标识包含新样式声明的所有属性的对象。
_global.styles.myStyle = new_style;
setStyle() 方法(该方法继承自 UIObject 类)将属性添加到 new_style 对象,这些属性随即与自定义样式声明 myStyle 相关联:
new_style.setStyle("fontFamily", "_serif");
new_style.setStyle("fontSize", 14);
new_style.setStyle("fontWeight", "bold");
new_style.setStyle("textDecoration", "underline");
new_style.setStyle("color", 0x666699);
styleName 属性设置为自定义样式声明名称:
a.setStyle("styleName", "myStyle");
b.setStyle("styleName", "myStyle");
c.setStyle("styleName", "myStyle");
您还可以通过声明的全局 styleName 属性使用 setStyle() 和 getStyle() 方法访问自定义样式声明上的样式。例如,以下代码对 myStyle 样式声明设置 backgroundColor 样式:
_global.styles.myStyle.setStyle("themeColor", "haloOrange");
但是,由于步骤 5 和 6 将 new_style 实例与样式声明相关联,因此您可以使用更短的语法,如 new_style.setStyle("themeColor", "haloOrange")。
有关 setStyle() 和 getStyle() 方法的详细信息,请参阅 UIObject.setStyle() 和 UIObject.getStyle()。
|
|
|
|