【问题标题】:Flex mouse cursor "xor" colorFlex 鼠标光标“异或”颜色
【发布时间】:2010-01-03 14:05:37
【问题描述】:

在我在 Flex 3 中执行的在线地图应用程序中,我需要一个光标来执行某些与背景进行异或着色的操作。

即它始终是其上方的任何像素的“负”颜色(黑色上的白色,绿色上的红色等)。

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

【问题讨论】:

    标签: apache-flex cursor


    【解决方案1】:

    看看 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);
    }
    

    【讨论】:

    • 恐怕这不是很清楚:设置自定义光标时我唯一的相关参数是表示光标图像的类(我只从 CursorManager 获得一个 ID)。如何/在哪里设置混合模式?
    • 更新了我的答案以包含解决方案,而不仅仅是提示。
    【解决方案2】:

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

    希望有帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-26
      • 1970-01-01
      • 1970-01-01
      • 2012-07-16
      • 2020-02-16
      • 2011-02-14
      相关资源
      最近更新 更多