自製 flash slider滾動條

2022-02-22 05:08:05 字數 2311 閱讀 4359

這段時間用flash做了乙個專案,其中用到了flash slider滾動條的功能,本來想用官方的元件,無奈修改樣式過於麻煩,也不好用,所以自己製作了乙個,可以實現相類似的功能。

【例項演示】

**結構如下:

myslider是slider的主類,通過setmc(mc:islider);控制傳入的操作介面,控制影片剪輯。rotatemc,resize是操作方法,繼承介面islider,以後要擴充套件各種功能,只要新建方法類繼承islider就可以了。

其中用類updateafterevent()強制重新整理螢幕,雖然會對效率產生一些影響,但是對於提高使用者體驗是有必要的。下面示例是沒有加updateafterevent的效果。主要差別在滑塊拖動時候的反應上。

【示例演示】

【**說明】

這裡並沒有完全按照官方slider元件的模式來開發,沒有傳送訊息事件,而是通過setmc(mc:islider)來裝載影片剪輯,內部傳送資料到繼承了islider介面的物件,這樣的好處是按需訂製功能。

【islider】

共同方法:updatedata,獲取slider物件的滑塊資料
package com.babyzone.slider  

}

【myslider】

package com.babyzone.slider  

/*----------------------------滑塊拖動效果--------------------------------*/

private function scroller_drag( e:mouseevent ):void

private function up( e:mouseevent ):void

private function updatescreen(e:mouseevent)

}public function reset():void

public function setmiddle():void

/*----------------------------滑塊拖動效果 end----------------------------*/

/*----------------------------對傳入的mc,設定----------------------------*/

public function setmc(mc:islider):void

private function delivedata(num:number):void

}}

【rotatemc】

實現旋轉+緩動功能的類。

package com.babyzone.slider  

public function updatedata(num:number):void

public function setrotate(e:event):void }

}

【resize】

實現擴大縮小的類

package com.babyzone.slider  

public function updatedata(num:number):void

private function set_size(e:event):void

}}

【呼叫方法】

import com.babyzone.slider.*;

//引數2是指3倍

var mc1:myslider = new myslider(1);

mc1.x = 100;

mc1.y = 20;

stage.addchild(mc1);

//測試擴大縮小

var obj:sampleobj=new sampleobj();

obj.x = 200;

obj.y = 160;

stage.addchild(obj);

var resizeobj:resize = new resize(obj,0.3);

mc1.setmc(resizeobj);

//測試旋轉

var mc2:myslider = new myslider(1);

mc2.x = 100;

mc2.y = 40;

stage.addchild(mc2);

var resizeobj1:rotatemc = new rotatemc(obj,0.3);

mc2.setmc(resizeobj1);

by  from

Flash 自製滾動條元件

前幾天做了乙個動畫,其中用到要滾屏的東西,就做了乙個滾動條,雖然flash元件中有這個控制項,但是與我的動畫效面不匹配,就自己做了,並把它封裝成了元件,方便使用。這個元件較簡單,只實現了垂直滾動 使用也簡單,不用寫一行 把元件拖進去,設定一下引數就實現滾動條了。我依然用的是flash 8,雖然好多年...

QT 自製控制項 滾動選擇器

因為我需要有連續的數字以供選擇,所以只記了數字範圍。如有需求可以改為用任意線性容器保持資料 self contained.h ifndef selfcontained h define selfcontained h include include include include endif sel...

自製乙個滾動條

參考文章 1 html 2 head 3 title 自定義滾動條 title 4 style 5 parent 1112 child 18 box 23style 24head 25 body 26 div id parent 27 div id child div 28div 29 div id...