代码之家  ›  专栏  ›  技术社区  ›  Assaf Lavie

柔性鼠标光标“xor”颜色

  •  1
  • Assaf Lavie  · 技术社区  · 14 年前

    在一个在线映射应用程序中,我在flex 3中做的是,我需要一个光标来进行某些操作,这些操作的背景颜色是xor。

    也就是说,它始终是它所代表的像素的“负”色(黑色为白色,绿色为红色等)。

    这可以用flex完成吗?(我可以滚动自己的编程光标吗?)

    2 回复  |  直到 14 年前
        1
  •  2
  •   Hrundik    14 年前

    查看DisplayObject.BlendMode属性: http://livedocs.adobe.com/flex/3/langref/flash/display/BlendMode.html#INVERT

    使用该属性设置为BlendMode.Invert的自定义光标

    更新: 这是解决方案

    光标类:

    package test
    {
    import flash.display.BlendMode;
    import flash.display.Graphics;
    import flash.display.Sprite;
    
    public class InvertCursor extends Sprite
    {
        public function InvertCursor()
        {
            super();
            draw();
            blendMode = BlendMode.INVERT;
        }
    
        public function draw():void {
            var g:Graphics = graphics;
            g.clear();
            g.beginFill(0);
            g.lineStyle(0);
            g.drawCircle(0, 0, 10);
            g.endFill();
        }
    
    }
    }
    

    用法:

    import mx.managers.CursorManager;
    import test.InvertCursor;
    
    private function setInvertCursor():void  {
        CursorManager.setCursor(InvertCursor);
    }
    
        2
  •  1
  •   David Salzer    14 年前

    当然,您可以有自己的光标: http://www.switchonthecode.com/tutorials/flex-custom-cursor-tutorial

    希望有帮助!