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这个平台
as3文本框的动态拖拽和编辑的更多相关文章
- Vue富文本编辑器(图片拖拽缩放)
富文本编辑器(图片拖拽缩放) 需求: 根据业务要求,需要能够上传图片,且上传的图片能在移动端中占满屏幕宽度,故需要能等比缩放上传的图片,还需要能拖拽.缩放.改变图片大小.尝试多个第三方富文本编辑器,很 ...
- bootstrap模态框实现相对定位拖拽
1.正常的拖拽是用绝对定位absolute来实现的,可是bootstrap的模态框是用relative,为了统一更改方便,就照着相对定位来实现拖拽效果. $(".modal .modal-h ...
- QML学习笔记(七)— 实现可拖拽、编辑、选中的ListView
鼠标单击可选中当前项,头部呈绿色显示:按压当前项可进行拖拽更换列表项位置:点击数据可以进行编辑: GitHub:八至 作者:狐狸家的鱼 这里是自己定义的model,有些字体和颜色都是使用的全局属性, ...
- ztree-可拖拽可编辑的树
<!DOCTYPE html> <HTML> <HEAD> <TITLE> ZTREE DEMO - addNodes / editName / rem ...
- QT-可拖拽可编辑的多控件ListView
目标 结合前面的2篇文章, 继续升级QML版本的ListView: 又要拖拽, 又要可编辑, 还得支持多个控件. 循序渐进 本文基于前一篇的基础: Qt-可编辑的ListView 要循序渐进的学习. ...
- gantt甘特图可拖拽、编辑(vue、react都可用 highcharts)
前言 Excel功能强大,应用广泛.随着web应用的兴起和完善,用户的要求也越来越高.很多Excel的功能都搬到了sass里面.恨不得给他们做个Excel出来...程序员太难了... 去年我遇到了 ...
- Jqgrid动态拖拽
//注册事件 jQuery("#list1").jqGrid('setGridParam', { gridComplete : function() { $("#_emp ...
- element穿梭框el-transfer增加拖拽排序和shift多选checkbox功能
<template> <div class="demo"> <el-transfer v-model="value" filter ...
- MVVM架构~knockoutjs系列之文本框数符长度动态统计功能
返回目录 这个功能为什么要写呢,因为在之前做了一个前端的页面效果,使用JS写的,感觉很累,真的,对于一个文本框长度动态统计,你要写blur,press,down什么的事件,太麻烦了,这时,我想到了kn ...
随机推荐
- java web从零单排第十六期《struts2》控制标签(2)
1.s:subset标签概述: s:subset标签功能是从一个集合中取出部分元素合并成一个新的集合,新生成的这个集合是原来集合的子集.属性和意义如下: 属性名 是否必需 默认值 类型 说明介绍 co ...
- cannot load supported formats intellij 解决的方法
http://stackoverflow.com/questions/20797443/intellij-idea-subversion-checkout-error http://stackover ...
- 表空间的状态(二) - read/write
表空间状态-READ ONLY.READ WRITE 1. 仅仅读表空间的主要用途就是为了消除对数据库大部分静态数据的备份和恢复的须要.Oracle不会更新仅仅读表空间爱你的文件.因此这部分文件能够存 ...
- cocos2d-x中使用JNI的调用JAVA方法
用cocos2d-x公布Android项目时.都应该知道要用JAVA与C/C++进行交互时会涉及到JNI的操作(Java Native Interface).JNI是JAVA的一个通用接口.旨在本地化 ...
- vim经常使用命令总结
vim 选择文本,删除,复制,粘贴 文本的选择,对于编辑器来说,是非常主要的东西,也常常被用到,总结例如以下: v 从光标当前位置開始,光标所经过的地方会被选中,再按一下v结束. V ...
- MongoDB在实际项目
MongoDB在实际项目中的使用 MongoDB简介 MongoDB是近些年来流行起来的NoSql的代表,和传统数据库最大的区别是支持文档型数据库.当然,现在的一些数据库通过自定义复合类型,可变长 ...
- CheckBox和RadioButton以及RadioGroup
CheckBox:复选框 有两种状态 选中状态(true),未选状态(false) 属性 android:checked= "false"(表示该复选框未被选中) RadioGro ...
- margin 等高布局
<div id="main"> <div id="left"> 我是左边的内容的啦啦啦啦... .<br> 我是左边的内容的 ...
- 【web必知必会】—— 图解HTTP(转)good
本篇总结关于http的相关知识,主要内容参考如下导图: 主要讲解的内容有: 1 URL与URI的区别. 2 请求报文与相应报文的内容. 3 GET与POST的区别. 4 http的cookie.持久化 ...
- hdu1243(最长公共子序列变形)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1243 分析:dp[i][j]表示前i个子弹去炸前j个恐怖分子得到的最大分.其实就是最长公共子序列加每个 ...