制作Slider组件的些许性能改善

2024-04-03 09:08

本文主要是介绍制作Slider组件的些许性能改善,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

代码是横向Slider组件的基本代码,注意onMouseMove函数部分。

在计算Rectangle的时候,对于高度,可以计算,也可以设置为0。代码执行效果完全一样。

由于少了一步的计算,对改善性能有些许贡献。

package {import com.bit101.components.List;import flash.display.Sprite;import flash.display.StageAlign;import flash.display.StageScaleMode;	import flash.events.MouseEvent;import flash.geom.Rectangle;public class test1 extends Sprite {private var a:Sprite;private var b:Sprite;public function test1() {//设置舞台与浏览器的相对位置stage.align = StageAlign.TOP_LEFT;//设置舞台是否随浏览器尺寸缩放:不缩放stage.scaleMode = StageScaleMode.NO_SCALE;a = new Sprite();a.graphics.beginFill(0x000000);a.graphics.drawRect(0, 0, 100, 20);a.graphics.endFill();a.x = 100;a.y = 100;addChild(a);b = new Sprite();b.graphics.beginFill(0x0000ff);b.graphics.drawRect(0, 0, 20, 20);b.graphics.endFill();b.x = 100;b.y = 100;addChild(b);b.addEventListener(MouseEvent.MOUSE_DOWN,onMouseDown);}private function onMouseDown(e:MouseEvent):void{stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp);			}private function onMouseMove(e:MouseEvent):void{var rec:Rectangle = new Rectangle(a.x,a.y,a.width - b.width,a.height - b.height);//var rec:Rectangle = new Rectangle(a.x,//a.y,//a.width - b.width,//0);b.startDrag(false, rec);			}private function onMouseUp(e:MouseEvent):void{stage.removeEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUp);	b.stopDrag();}}
}


这篇关于制作Slider组件的些许性能改善的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/872487

相关文章

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

JVisualVM之Java性能监控与调优利器详解

《JVisualVM之Java性能监控与调优利器详解》本文将详细介绍JVisualVM的使用方法,并结合实际案例展示如何利用它进行性能调优,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全... 目录1. JVisualVM简介2. JVisualVM的安装与启动2.1 启动JVisualVM2

C++ RabbitMq消息队列组件详解

《C++RabbitMq消息队列组件详解》:本文主要介绍C++RabbitMq消息队列组件的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. RabbitMq介绍2. 安装RabbitMQ3. 安装 RabbitMQ 的 C++客户端库4. A

Java使用MethodHandle来替代反射,提高性能问题

《Java使用MethodHandle来替代反射,提高性能问题》:本文主要介绍Java使用MethodHandle来替代反射,提高性能问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录一、认识MethodHandle1、简介2、使用方式3、与反射的区别二、示例1、基本使用2、(重要)

PyTorch高级特性与性能优化方式

《PyTorch高级特性与性能优化方式》:本文主要介绍PyTorch高级特性与性能优化方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、自动化机制1.自动微分机制2.动态计算图二、性能优化1.内存管理2.GPU加速3.多GPU训练三、分布式训练1.分布式数据

PyQt6中QMainWindow组件的使用详解

《PyQt6中QMainWindow组件的使用详解》QMainWindow是PyQt6中用于构建桌面应用程序的基础组件,本文主要介绍了PyQt6中QMainWindow组件的使用,具有一定的参考价值,... 目录1. QMainWindow 组php件概述2. 使用 QMainWindow3. QMainW

Java的"伪泛型"变"真泛型"后对性能的影响

《Java的伪泛型变真泛型后对性能的影响》泛型擦除本质上就是擦除与泛型相关的一切信息,例如参数化类型、类型变量等,Javac还将在需要时进行类型检查及强制类型转换,甚至在必要时会合成桥方法,这篇文章主... 目录1、真假泛型2、性能影响泛型存在于Java源代码中,在编译为字节码文件之前都会进行泛型擦除(ty

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

SpringQuartz定时任务核心组件JobDetail与Trigger配置

《SpringQuartz定时任务核心组件JobDetail与Trigger配置》Spring框架与Quartz调度器的集成提供了强大而灵活的定时任务解决方案,本文主要介绍了SpringQuartz定... 目录引言一、Spring Quartz基础架构1.1 核心组件概述1.2 Spring集成优势二、J