Menu
- Aktualności
- Mój startup Nowy odcinek
- Blogi ekspertów
- Projektowanie WWW
- Planowanie
- Hosting i domeny
- Organizacja i nawigacja
- Webdesign i grafika
- Warsztat - programy
- Tutoriale Photoshop
- Programowanie i tworzenie
- XHTML, HTML i CSS
- JavaScript, DOM i AJAX
- jQuery
- PHP i SQL
- Flash i ActionScript
- Dostępność i WAI
- Promowanie stron
- Pozycjonowanie
- Reklama i marketing
- Monitoring i statystyki
- Publicystyka
- Artykuły ogólne
- Społeczności
- Praca i zarabianie
- Wywiady
- Standardy sieciowe
- Zasoby
- Kursy
- Recenzje książek
- Linki
Dla webmastera
Własny suwak we Flashu
Autor: Marek Redesiuk, dodano: 19-12-2008
Kategoria: Programowanie i tworzenie
Suwak stworzymy w niezależnym MovieClipie (MC) tak, aby można było go stosować wielokrotnie w jednym projekcie, bez konieczności duplikowania MC w bibliotece. Tworzymy w tym celu MC, nazywamy go prowadnica_mc i rysujemy w nim poziomą linię o dowolnej długości. Współrzędne x i y linii leżą na wartościach 0.

Ten MC będzie decydował o zakresie przemieszczania się uchwytu suwaka, a jego długość nie będzie miała znaczenia dla wyniku zwróconego przez suwak. Następnie tworzymy drugi MC o nazwie uchwyt_mc, rysujemy w nim kwadrat o bokach 10px (ustawiamy go na środku obszaru edycyjnego).

Przypomnę, że za dokładne ustawienie położenia obiektu odpowiada panel Align [Ctrl + k] oraz wartości w polach X i Y panelu Properties. Teraz tworzymy MC o nazwie suwak_mc. Ten MC będzie naszym suwakiem, czyli będzie przechowywał w sobie poprzednio zrobione MC i skrypt sterujący. Tworzymy w nim trzy warstwy, najniższą nazywamy prowadnica, środkową uchwyt, a górną as.

W 1 klatce warstwy prowadnica, nanosimy z biblioteki MC prowadnica_mc i ustawiamy na współrzędnych x=0 i y=0. Klikamy na tym MC i w panelu Properties w polu




this.dlugoscPrzesuniecia = Math.abs(this.dlugosc == undefined ? 100 : !isNaN(this.dlugosc) ? this.dlugosc : 100);
this.skalaObliczen = Math.abs(this.skala == undefined ? 100 : !isNaN(this.skala) ? this.skala : 100);
this.wartoscPoczatkowa = Math.abs(this.wartosc == undefined ? 0 : !isNaN(this.wartosc) ? this.wartosc : 0);
this.wartoscPoczatkowa > this.skalaObliczen ? this.wartoscPoczatkowa = this.skalaObliczen : null;
prowadnica_mc._width = this.dlugoscPrzesuniecia;
uchwyt_mc._x = (this.wartoscPoczatkowa / this.skalaObliczen) * prowadnica_mc._width;
this.wynik = this.wartoscPoczatkowa;
uchwyt_mc.onPress = function() {
this.startDrag(true, 0, 0, prowadnica_mc._width, 0);
this.onMouseMove = function() {
this._parent.wynik = Math.ceil(this._x / prowadnica_mc._width * this._parent.skalaObliczen);
updateAfterEvent();
};
};
uchwyt_mc.onMouseUp = function() {
this.stopDrag();
delete this.onMouseMove;
};
this.dlugoscPrzesuniecia = Math.abs(this.dlugosc == undefined ? 100 : !isNaN(this.dlugosc) ? this.dlugosc : 100); this.skalaObliczen = Math.abs(this.skala == undefined ? 100 : !isNaN(this.skala) ? this.skala : 100); this.wartoscPoczatkowa = Math.abs(this.wartosc == undefined ? 0 : !isNaN(this.wartosc) ? this.wartosc : 0);
this.wartoscPoczatkowa > this.skalaObliczen ? this.wartoscPoczatkowa = this.skalaObliczen : null;
prowadnica_mc._width = this.dlugoscPrzesuniecia;
uchwyt_mc._x = (this.wartoscPoczatkowa / this.skalaObliczen) * prowadnica_mc._width;
this.wynik = this.wartoscPoczatkowa;
uchwyt_mc.onPress = function() {
this.startDrag(true, 0, 0, prowadnica_mc._width, 0);
this.onMouseMove = function() {
this._parent.wynik = Math.ceil(this._x / prowadnica_mc._width * this._parent.skalaObliczen);
updateAfterEvent();
};
};
uchwyt_mc.onMouseUp = function() {
this.stopDrag();
delete this.onMouseMove;
};
suwak1.dlugosc = 200;
suwak1.skala = 300;
suwak1.wartosc = 50;
this.onEnterFrame = function() {
odczyt_txt.text = suwak1.wynik;
};
suwak1.dlugosc = 100;
suwak1.skala = 100;
suwak1.wartosc = 50;
this.onEnterFrame = function() {
jakis_mc._width = suwak1.wynik;
};
Marek Redesiuk
Autor prowadzi stronę www.bannerflash.pl.

