zoukankan      html  css  js  c++  java
  • as3文本框的动态拖拽和编辑

    如今非常多软件都支持了编辑界面的文本拖拽和点击编辑来直接改动数值, 这样便于操作, 并且体验性也好, 抛砖引玉吧

    于是就用好久没编写的as3来写了一下:

    由于用的flash ide写的没有提示, 就临时不做细节处理了, 假设用于project上会有点小问题, 只是不影响本效果展示

    这里写图片描写叙述

    代码:

    import flash.text.TextField;
    import flash.events.*
    
    var txtDragValue:TextField;
    txtDragValue.selectable = false;
    var isDown:Boolean = false;
    var oldTxtValue:int = 0;
    var posXOld:int = 0;
    var isMoved:Boolean = false;
    
    function evt_down(e:Event){
        isDown = true;
        isMoved = false;
        oldTxtValue = int(txtDragValue.text);
        posXOld = mouseX;
    }
    function evt_move(e:Event){
        if(!isDown || txtDragValue.selectable)return;
        var tmpX:int  =  int(mouseX)
        if(posXOld!=tmpX){
            isMoved = true;
            oldTxtValue+= (tmpX-posXOld)*1;
            posXOld = tmpX;
            txtDragValue.text = oldTxtValue.toString();
            trace(oldTxtValue.toString());
        }
    }
    function evt_up(e:Event){
        isDown = false;
        if(!isMoved){
            txtDragValue.selectable = true;
            txtDragValue.type = "input";
            stage.focus=txtDragValue
        }
    }
    function evt_dea(e:Event){
        if(!isMoved && txtDragValue.selectable){
            txtDragValue.selectable = false;
            txtDragValue.type = "dynamic";
        }
    }
    
    txtDragValue.addEventListener(MouseEvent.MOUSE_DOWN,evt_down);
    txtDragValue.addEventListener(MouseEvent.MOUSE_MOVE,evt_move);
    txtDragValue.addEventListener(MouseEvent.MOUSE_UP,evt_up);
    
    txtDragValue.addEventListener(FocusEvent.FOCUS_OUT,evt_dea);

    资源地址:
    链接: http://pan.baidu.com/s/1gd3wsRx password: 668g

    回想使用这么多种语言和引擎, 感觉flash还有发展的空间, 仅仅是adobe对它力不从心, 假设as4有的话, 希望来个c++版本号(猜跨平台会非常费劲)的内核, 速度会上来. 感觉flash还是太散了, 由于较早开发的软件, 用途也过于广泛, 导致它什么都能做, 什么也做不好, 什么都要自己去写或者去找, 只是还好, 当中有非常多大牛的引擎比方tween-lite轻量化的运动模块和box2d-as3版, 都能非常高效的支持as3这个平台

  • 相关阅读:
    net core 2 读取appsettings.json
    转: C# 根据当前时间获取,本周,本月,本季度等时间段 .Net中Exception
    转:5种回到顶部的写法从实现到增强
    转:jQuery 常见操作实现方式
    NLog 自定义字段 写入 oracle
    转:C# 使用NLog记录日志
    转:NLog之:文件类型目标(File target)
    springboot2.x+jwt+shiro最简单、最快速整合方式
    windows部署mindoc
    docker安装mongodb
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5134082.html
Copyright © 2011-2022 走看看