flash.display
public final class CapsStyle
继承CapsStyle Inheritance Object

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

CapsStyle 类是可指定在绘制线条中使用的端点样式的常数值枚举。常数可用作 flash.display.Graphics.lineStyle() 方法的 caps 参数中的值。可以指定以下三种类型的端点:

三种类型的端点:NONE、ROUND 和 SQUARE。

查看示例

另请参见

flash.display.Graphics.lineStyle()


公共属性
 属性定义方
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
公共方法
 方法定义方
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
公共常量
 常量定义方
  NONE : String = "none"
[静态] 用于在 flash.display.Graphics.lineStyle() 方法的 caps 参数中指定没有端点。
CapsStyle
  ROUND : String = "round"
[静态] 用于在 flash.display.Graphics.lineStyle() 方法的 caps 参数中指定圆头端点。
CapsStyle
  SQUARE : String = "square"
[静态] 用于在 flash.display.Graphics.lineStyle() 方法的 caps 参数中指定方头端点。
CapsStyle
常量详细信息
NONE常量
public static const NONE:String = "none"

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

用于在 flash.display.Graphics.lineStyle() 方法的 caps 参数中指定没有端点。

ROUND常量 
public static const ROUND:String = "round"

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

用于在 flash.display.Graphics.lineStyle() 方法的 caps 参数中指定圆头端点。

SQUARE常量 
public static const SQUARE:String = "square"

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

用于在 flash.display.Graphics.lineStyle() 方法的 caps 参数中指定方头端点。

示例 如何使用示例
CapsStyleExample.as

下例使用 CapsStyleExample 类绘制三条平行线,并且每条平行线具有不同的线条端点样式。
  1. 每条线的属性设置如下所示:
    • 将线条长度设置为 80 像素。
    • 将边框颜色设置为橙色。
    • 将边框大小设置为 30 像素。
    • 将加亮颜色设置为灰色。
    • 加亮大小设置为 0 像素。
    • 将 Alpha 设置为 1,使其成为实线。
    • 将像素提示设置为 false(不提示笔触采用全部像素)。
    • 将线条缩放模式设置为正常,这将缩放粗细。
    • 边框端点的联接点样式设置为 MITER
    • 尖角限制设置为 1,指示在接近线条处切断尖角。
  2. 类构造函数以 x = 0, y = 0 为起点创建三条垂直线,方法是使用三种不同的线条端点样式(无、圆头和方头)对 drawLine() 方法进行三次调用。drawLine() 方法的每次调用(共三次)都使用先前列出的端点样式和属性来绘制垂直线和相关线条加亮效果。这些调用首先创建一个新的 child Shape 对象,然后使用 Graphics 类的方法来设置线条样式并绘制线条及加亮效果。child 的每个实例添加到显示列表中并在舞台上进行绘制。
  3. 通过使用 refreshLayout() 方法,在 y = 80 像素处、从 x = 80 像素开始以 25 像素的线段间距重绘连接的线段。
package {
    import flash.display.CapsStyle;
    import flash.display.DisplayObject;
    import flash.display.Graphics;
    import flash.display.JointStyle;
    import flash.display.LineScaleMode;
    import flash.display.Shape;
    import flash.display.Sprite;

    public class CapsStyleExample extends Sprite {
        private var lineLength:uint            = 80;
        private var borderColor:uint           = 0xFFCC00;
        private var borderSize:uint            = 30;
        private var highlightColor:uint        = 0x666666;
        private var highlightSize:uint         = 0;
        private var gutter:uint                = 25;
        private var borderAlpha:uint           = 1;
        private var borderPixelHinting:Boolean = false;
        private var borderScaleMode:String     = LineScaleMode.NORMAL;
        private var borderJointStyle:String    = JointStyle.MITER;
        private var borderMiterLimit:uint      = 1;

        public function CapsStyleExample() {
            drawLine(CapsStyle.NONE);
            drawLine(CapsStyle.ROUND);
            drawLine(CapsStyle.SQUARE);
            refreshLayout();
        }

        private function drawLine(capsStyle:String):void {
            var child:Shape = new Shape();
            child.graphics.lineStyle(borderSize,
                                     borderColor,
                                     borderAlpha,
                                     borderPixelHinting,
                                     borderScaleMode,
                                     capsStyle,
                                     borderJointStyle,
                                     borderMiterLimit);
            child.graphics.lineTo(0, 0);
            child.graphics.lineTo(0, lineLength);
            child.graphics.endFill();

            child.graphics.moveTo(0, 0);
            child.graphics.lineStyle(highlightSize, highlightColor);
            child.graphics.lineTo(0, 0);
            child.graphics.lineTo(0, lineLength);

            addChild(child);
        }

        private function refreshLayout():void {
            var ln:uint = numChildren;
            var child:DisplayObject;
            var lastChild:DisplayObject = getChildAt(0);
            lastChild.x = lineLength;
            lastChild.y = lineLength;
            for (var i:uint = 1; i < ln; i++) {
                child = getChildAt(i);
                child.x = gutter + lastChild.x + lastChild.width;
                child.y = lineLength;
                lastChild = child;
            }
        }
    }
}