Ho iniziato a stendere un codice per creare uno scroller di pulsanti e funziona. Ma sarei più interessato a sentire i consigli di qualcuno più esperto, dal momento che non conosco molto a fondo flash. Questo è il codice:
codice:
/*


			SCROLLER
			
			

*/
// setto alcuni parametri
btn_num = 8;
btn_lar = 500;
btn_hal = 100;
btn_gap = 1;
btn_showed = 4;
btn_mask_lar = btn_lar;
btn_mask_hal = (btn_hal+btn_gap)*btn_showed;
btn_tot_hal = (btn_hal+btn_gap)*btn_num;
btn_rangeToScroll = btn_tot_hal-btn_mask_hal;
btn_hold_startY = 0;
btn_hold_endUpY = btn_hold_startY-btn_rangeToScroll;
btn_hold_endDownY = btn_hold_startY;
btn_scroll_scale = 15;
btn_scroll_Xoff = (btn_lar/100)*2;
btn_scroll_Xoff = (btn_lar/100)*2;
btn_txt_pointSize = 50;
// voci da inserire nei pulsanti
btn_vox = new Array();
btn_vox[0] = "pulsante";
btn_vox[1] = "pulsante";
btn_vox[2] = "pulsante";
btn_vox[3] = "pulsante";
btn_vox[4] = "pulsante";
btn_vox[5] = "pulsante";
btn_vox[6] = "pulsante";
btn_vox[7] = "pulsante";
//	
trace(btn_rangeToScroll);
trace(btn_hold_endUpY);
trace(btn_hold_endDownY);
/*

	PULSANTI DA SCROLLARE

*/
//	creo il contenitore
this.createEmptyMovieClip("hold", this.getNextHighestDepth());
//	creo il contenitore dei pulsanti, dentro al contenitore principale
this.hold.createEmptyMovieClip("hold_btn", this.hold.getNextHighestDepth());
//	associo ad una variabile, il percorso al contenitore dei pulsanti
btn_hold_Ref = this.hold["hold_btn"];
//	dichiaro la posizione 'y' del contenitore dei pulsanti
btn_hold_Ref._y = btn_holdY;
//	creo i pulsanti dentro al contenitore dei pulsanti
for (i=0; i<8; i++) {
	this.hold.hold_btn.createEmptyMovieClip("btn"+i, this.hold.hold_btn.getNextHighestDepth());
	//	associo ad una variabile, il percorso alla nuova clip pulsante
	btn_Ref = this.hold.hold_btn["btn"+i];
	//	posiziono i pulsanti
	btn_Ref._y += (btn_hal+btn_gap)*i;
	//	disegno i pulsanti
	with (btn_Ref) {
		beginFill(0x990000, 100);
		lineStyle(0, 0x000000, 0);
		moveTo(0, 0);
		lineTo(btn_lar, 0);
		lineTo(btn_lar, btn_hal);
		lineTo(0, btn_hal);
		lineTo(0, 0);
		endFill();
	}
	// creo i campi di testo da inserire nei pulsanti
	btn_Ref.createTextField("btn_txt", btn_Ref.getNextHighestDepth(), 0, btn_hal/2-btn_txt_pointSize/2, btn_lar, btn_hal);
	with (btn_Ref.btn_txt) {
		embedFonts = false;
		variable = btn_txt_var;
		btn_format = new TextFormat();
		with (btn_format) {
			font = "Arial";
			size = btn_txt_pointSize;
			color = 0xFFFFFF;
			align = "center";
		}
		selectable = false;
		//	assegno il testo
		text = btn_vox[i]+" "+(i+1);
		//	formatto il testo
		setTextFormat(btn_format);
	}
}
/*

	MASCHERA PULSANTI DA SCROLLARE

*/
//	creo il contenitore per la maschera dello scrollpane, dentro al contenitore principale
this.hold.createEmptyMovieClip("hold_btn_mask", this.hold.getNextHighestDepth());
//	associo ad una variabile, il percorso alla nuova clip maschera
mask_Ref = this.hold["hold_btn_mask"];
//	posiziono la maschera
mask_Ref._x = 0;
mask_Ref._y = 0;
trace(mask_Ref);
//	disegno la maschera dentro al contenitore della maschera
with (mask_Ref) {
	beginFill(0x990000, 100);
	lineStyle(0, 0x000000, 0);
	moveTo(0, 0);
	lineTo(btn_mask_lar, 0);
	lineTo(btn_mask_lar, btn_mask_hal);
	lineTo(0, btn_mask_hal);
	lineTo(0, 0);
	endFill();
}
//	maschero la clip che contiene i pulsanti, con la nuova clip maschera
this.hold.hold_btn.setMask(this.hold.hold_btn_mask);
/*

	PULSANTI SCROLL UP/DOWN

*/
//	creo il pulsante per scrollare in alto
this.hold.createEmptyMovieClip("btn_scrollUp", this.hold.getNextHighestDepth());
//	associo ad una variabile, il percorso al nuovo pulsante per scrollare in alto
btn_scrollUp_Ref = this.hold["btn_scrollUp"];
//	posiziono il pulsante per scrollare in alto
btn_scrollUp_Ref._x = this.hold.hold_btn._x+btn_lar+btn_scroll_Xoff;
btn_scrollUp_Ref._y = this.hold.hold_btn._y;
//	disegno il pulsante per scrollare in alto
with (btn_scrollUp_Ref) {
	beginFill(0xFF3366, 100);
	lineStyle(0, 0x000000, 0);
	moveTo(50, 0);
	lineTo(100, 50);
	lineTo(75, 50);
	lineTo(75, 150);
	lineTo(25, 150);
	lineTo(25, 50);
	lineTo(0, 50);
	lineTo(50, 0);
	endFill();
}
//	dimensiono il pulsante per scrollare in alto
btn_scrollUp_Ref._xscale = btn_scroll_scale;
btn_scrollUp_Ref._yscale = btn_scroll_scale;
//	creo il pulsante per scrollare in basso
this.hold.createEmptyMovieClip("btn_scrollDown", this.hold.getNextHighestDepth());
//	associo ad una variabile, il percorso al nuovo pulsante per scrollare in basso
btn_scrollDown_Ref = this.hold["btn_scrollDown"];
//	posiziono il pulsante per scrollare in basso
btn_scrollDown_Ref._x = this.hold.hold_btn._x+btn_lar+btn_scroll_Xoff;
btn_scrollDown_Ref._y = this.hold.hold_btn._y+btn_mask_hal-btn_scrollUp_Ref._height;
//	disegno il pulsante per scrollare in basso
with (btn_scrollDown_Ref) {
	beginFill(0xFF3366, 100);
	lineStyle(0, 0x000000, 0);
	moveTo(25, 0);
	lineTo(75, 0);
	lineTo(75, 100);
	lineTo(100, 100);
	lineTo(50, 150);
	lineTo(0, 100);
	lineTo(25, 100);
	lineTo(25, 0);
	endFill();
}
//	dimensiono il pulsante per scrollare in basso
btn_scrollDown_Ref._xscale = btn_scroll_scale;
btn_scrollDown_Ref._yscale = btn_scroll_scale;
/*

	FUNZIONI PER SCROLL UP/DOWN

*/
//	funzione per scrollare verso l'alto
MovieClip.prototype.scrollaUp = function() {
	btn_scrollUp_Ref.onRollOver = function() {
		btn_scrollUp_Ref.onEnterFrame = function() {
			btn_hold_Ref._y = Math.floor(btn_hold_Ref._y+(btn_hold_endUpY-btn_hold_Ref._y)/10);
			//	trace
			trace(Math.floor(btn_hold_Ref._y+(btn_hold_endUpY-btn_hold_Ref._y)/10));
		};
	};
	btn_scrollUp_Ref.onRollOut = function() {
		btn_scrollUp_Ref.onEnterFrame = function() {
			btn_hold_Ref._y = btn_hold_Ref._y;
		};
	};
};
//	funzione per scrollare verso il basso
MovieClip.prototype.scrollaDown = function() {
	btn_scrollDown_Ref.onRollOver = function() {
		btn_scrollDown_Ref.onEnterFrame = function() {
			btn_hold_Ref._y = Math.ceil(btn_hold_Ref._y+(btn_hold_endDownY-btn_hold_Ref._y)/10);
			//	trace
			trace(Math.ceil(btn_hold_Ref._y+(btn_hold_endDownY-btn_hold_Ref._y)/10));
		};
	};
	btn_scrollDown_Ref.onRollOut = function() {
		btn_scrollDown_Ref.onEnterFrame = function() {
			btn_hold_Ref._y = btn_hold_Ref._y;
		};
	};
};
//	associo le funzioni appena dichiarate, ai due pulsanti per scrollare
btn_scrollUp_Ref.scrollaUp();
btn_scrollUp_Ref.scrollaDown();
Anche se sono abbastanza preso in questi giorni, gradirei sapere la vostra... Ciao a tutti!




-