首 页 编程技术 网页设计 软件频道 系统维护 网络安全 范文大全 站长专区
首 页 编程技术 网页设计 软件频道 系统维护 网络安全 范文大全 站长专区
设为首页
加入收藏
联系我们
首 页 | ASP技术 | PHP技术 | NET技术 | JSP技术 | AJAX | C++ | JavaScript | HTML | | 布局配色 | MSSQL | MySQL | Access
DreamWeaver | FrontPage | Flash | PhotoShop | Firework | CorelDraw | 操作系统 | 办公软件 | 网络营销 | 搜索引擎 | 站长专区 | 服务器 | 范文大全 | 安全
Flash教程:鼠标调整窗口大小
发布日期:[08-06-14 10:15:04] 点击次数:[]
函数:
//随鼠标缩放大小函数
//finger:指针
//wLeast:最小宽度
//hLeast:最小高度度
MovieClip.prototype.MouseSetSize = function(finger:String, wLeast:Number, hLeast:Number) {
if (wLeast == undefined) {
wLeast = 50;
}
if (hLeast == undefined) {
hLeast = 30;
}
var depth = this.getNextHighestDepth();//指针深度
var mc = this;
var drag:Boolean = false;//是否可以缩放
var nm:Number;//当前指针序号
var px:Number;//缩放开始时的鼠标x位置
var py:Number;//缩放开始时的鼠标y位置
onMouseMove = function() {
var xm = mc._xmouse;//相对鼠标x位置
var ym = mc._ymouse;//相对鼠标y位置
var w = mc.__width;//组件宽
var h = mc.__height;//组件高
//缩放组件
if (drag) {
if (nm == 1) {
if (px>=4) {
if (xm<wLeast) {
xm = wLeast;
}
mc.setSize(Math.floor(xm), h);
} else {
mc.setSize(w-xm, h);
if (w-xm>=wLeast) {
mc._x = _xmouse;
} else {
mc.setSize(wLeast, h);
}
}
} else if (nm == 2) {
if (py>=4) {
if (ym<hLeast) {
ym = hLeast;
}
mc.setSize(w, Math.floor(ym));
} else {
mc.setSize(w, h-ym);
if (h-ym>=hLeast) {
mc._y = _ymouse;
} else {
mc.setSize(w, hLeast);
}
}
} else if (nm == 3) {
if (py>=4) {
if (ym<hLeast) {
ym = hLeast;
}
mc.setSize(w-xm, Math.floor(ym));
if (w-xm>=wLeast) {
mc._x = _xmouse;
} else {
mc.setSize(wLeast, Math.floor(ym));
}
} else {
if (xm<wLeast) {
xm = wLeast;
}
mc.setSize(Math.floor(xm), h-ym);
if (h-ym>=hLeast) {
mc._y = _ymouse;
} else {
mc.setSize(w, hLeast);
}
}
} else if (nm == 4) {
if (py>=4) {
if (xm<wLeast) {
xm = wLeast;
}
if (ym<hLeast) {
ym = hLeast;
}
mc.setSize(Math.floor(xm), Math.floor(ym));
} else {
mc.setSize(w-xm, h-ym);
if (w-xm>=wLeast) {
mc._x = _xmouse;
} else {
mc.setSize(wLeast, h);
}
if (h-ym>=hLeast) {
mc._y = _ymouse;
} else {
mc.setSize(w, hLeast);
}
}
}
}
//判断是否在范围内
if ((xm>=0 && xm<=w && ym>=0 && ym<=h) && !(xm>=3 && xm<=w-3 && ym>=3 && ym<=h-3)) {
if (mc.mouse == undefined) {
Mouse.hide();
mc.attachMovie(finger, "mouse", depth, {_x:xm, _y:ym});
startDrag(mc.mouse, true);
nm = 1;
}
if (ym>=15 && ym<=h-15) {
if (nm != 1) {
mc.mouse.gotoAndStop(1);
nm = 1;
}
} else if (xm>=15 && xm<=w-15) {
if (nm != 2) {
mc.mouse.gotoAndStop(2);
nm = 2;
}
} else if ((ym<=3 && xm>=w-15) || (ym>=h-3 && xm<=15)) {
if (nm != 3) {
mc.mouse.gotoAndStop(3);
nm = 3;
}
} else if ((ym<=3 && xm<=15) || (ym>=h-3 && xm>=w-15)) {
if (nm != 4) {
mc.mouse.gotoAndStop(4);
nm = 4;
}
}
onMouseDown = function () {
if (mc.mouse != undefined) {
drag = true;
px = xm;
py = ym;
}
};
updateAfterEvent();
} else {
if (mc.mouse != undefined) {
mc.mouse.removeMovieClip();
Mouse.show();
}
}
onMouseUp = function () {
drag = false;
};
};
};

  使用窗口.MouseSetSize(finger, wLeast, hLeast) 即可为它加上此功能!

  而且,它可以为任何矩形mc加上此功能,只要将__width改为_width, __height改为 _height,把setSize方法改为_width=......,_height=......就可以了。

  由于此方法需要使用onMouseMove侦听器,并要判断许多数据,所以不宜为过多窗口同时添加此功能,否则会执行比较慢!

 

 

点击这里下载源文件
上一篇:
下一篇:

热点文章

· 基于B/S体系结构开发应用系统
· 相框专家为婚纱照快速添加精美边
· 使用AJAX技术构建更优秀的Web应用
· 精细绘制矢量风格的啤酒瓶盖
· 鼠年知运 2008年编程语言运势抢先
· Windows Server 2008新功能影响应
· asp.net常用的函数表
· Sql Server数据库占用CPU的解决方
· SQL Server 触发器
· 在ASP中轻松实现记录集分页显示
· SCA,软件开发的3G时代
· 利用AJAX技术提高搜索引擎排名
· 浅谈网上教学的实践与探索
· 八种方法最短时间让人知道你的网
· 个人站点提高访问量谋略

搜索引擎

网站留言 | 友情连接 | 广告服务 | 版权申明 | 合作伙伴 | 法律声明 | 人员招聘 | 网站简介 | 联系我们 | About Us
站内所有资源均收集于互联网,其版权属原作者所有。 E吧-中国IT门户欢迎你的光临!
赣ICP备07501208号