Zurück   Flashforum > Flash > ActionScript > Softwarearchitektur und Entwurfsmuster

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-05-2006, 09:18   #1 (permalink)
Let´s fly...
 
Benutzerbild von Doc Flyman
 
Registriert seit: Nov 2005
Beiträge: 12
Lightbulb Schieberegler

Hallo an alle,

nachdem dieses Forum mir mit seinen mehr als reichhaltigen Informationen sehr oft geholfen hat, nun auch ein kleiner, bescheidener Beitrag von mir .

Mit folgendem knappem Code läßt sich in wenigen Augenblicken ein Schieberegler einbauen und konfigurieren. Man braucht lediglich zwei Grafiken (Schieber und Halter), die in MC´s gestellt werden, sowie ein dynamisches Textfeld.

PHP-Code:
///////////////////////////////////////////////////////////////
// Dieser Schieberegler läßt sich universell anpassen.       //
// Dazu müssen lediglich die Werte der ersten fünf Variablen // 
// vorgegeben werden. Der Regler rastet nach dem Loslassen   //
// in die nächstgelegene Position ein.                         //
///////////////////////////////////////////////////////////////
stop();
var 
weg 46// Anzahl Pixel der gesamten Wegstrecke
var esp 5// Anzahl der gewünschten Einstellpunkte
var ebvn 5// Entfernung der Bahn vom Nullpunkt der x-Achse
var aw 3// kleinster Anzeigewert
var ew 20// größter Anzeigewert
var aewd = (ew-aw)/(esp-1); // Differenzwert zwischen den einzelnen Anzeigepunkten
var hpe weg/(esp-1); // Entfernung der Haltepunkte untereinander in px
var hp:Array = new Array(); // Erstellung von Arrays für Pixelwerte
var hp1:Array = new Array(); // Erstellung von Arrays für Einstellwerte
for (var 1<= espi++){
    
hp[i-1] = ebvn+hpe*(i-1); // Füllen der Arrays mit Pixelwerten
    
hp1[i-1] = Math.round(aw+aewd*(i-1)); // Füllen der Arrays mit Einstellwerten
    
};
var 
sta hp[Math.round((esp/2)-1)]; // Berechnung des Reglerstartpunktes etwa in der Mitte
this.regler._x sta// Setzen des Reglerstartpunktes
var sta1 hp1[Math.round((esp/2)-1)] // Berechnung des Einstellwertstartpunktes
this.sek_wert.text sta1+"s"// Schreiben des Einstellwertstartpunktes
this.regler.onPress = function() { // Wird der Regler gedrückt
  
this.startDrag(falseebvn0, (ebvn+weg), 0); // bewegt er sich an diesem Pfad
  
this.onEnterFrame = function() { // Verändert der Regler seine Position
    
for(var 0;<= (hp.length-1);j++){ // wird diese ermittelt
        
if(regler._x < (hp[j]+(hpe/2)) && regler._x > (hp[j]-(hpe/2))){
            
sta1 hp1[j]; // und der zugehörige Einstellwert zugeordnet
            
sta hp[j]; // sowie die Position festgelegt, in die der
        
}                 // Regler beim loslassen springt
    
}
    
sek_wert.text sta1+"s"// Aktueller Einstellwert wird geschrieben
  
}
};
this.regler.onRelease this.regler.onReleaseOutside = function() {
  
regler._x sta// Regler springt in feste Position
  
stopDrag();                     // und alles wird
  
delete this.onEnterFrame;        // aufgeräumt.
  
stellwert();        // Aufruf gewünschter Funktionen

Ein Beispiel für die Verwendung in einer Bildergalerie findet Ihr hier.
Man stellt bei Aktivierung der Diashow die gewünscht Anzeigedauer ein.

Vielleicht hilft es dem einen oder anderen.

Sollte diese Posting besser woanders stehen, bitte verschieben.

MfG Doc Flyman
__________________
"Doc! Essen ist fertig!!!" --- "Ja, gleich...!"
"Doc! Essen ist kalt!!!" --- "Ja, gleich...!"
"Doc! Bin weg!!!" --- "Ja, gleich...! Äh, Mausi???"
Doc Flyman ist offline   Mit Zitat antworten
Alt 28-05-2006, 09:36   #2 (permalink)
tracer
 
Benutzerbild von andretti
 
Registriert seit: Jun 2004
Beiträge: 4.412
feine sache!

aber ohne grundgerüst(fla) nur die hälfte wert?
und i kapier auch net, für was des gut ist?
__________________
Viola per Sempre
Alle Angaben ohne Gewehr!
trace your open mind in variables !
andretti
ActionScript Dictionary
andretti ist offline   Mit Zitat antworten
Alt 28-05-2006, 17:38   #3 (permalink)
Let´s fly...
 
Benutzerbild von Doc Flyman
 
Registriert seit: Nov 2005
Beiträge: 12
Der Vorteil liegt im modularen Aufbau. Er läßt sich ohne großen Aufwand überall einbauen und schnell anpassen. Egal welche Grafiken ich für den Regler verwende. Man muß nur die Abmessungen und Positionen dieser Grafiken in px wissen, was kein Problem darstellen sollte.

Für die Verwendung können die gelieferten Rückgabewerte (sta1) genutzt werden.

In meinem Anwendungsfall sollen die Sekunden bis zum Bildwechsel eingestellt werden können. Er ist somit bei Bildergallerien interessant, wenn man dies nicht über ein Eingabefeld regeln will. Aber auch überall, wo kein linearer Verlauf gewünscht ist, bietet er sich an.

Anbei noch die gewünschte .fla, damit sicher noch um einiges verständlicher.

Gruß Doc Flyman
Angehängte Dateien
Dateityp: zip schieber.zip (7,1 KB, 112x aufgerufen)
__________________
"Doc! Essen ist fertig!!!" --- "Ja, gleich...!"
"Doc! Essen ist kalt!!!" --- "Ja, gleich...!"
"Doc! Bin weg!!!" --- "Ja, gleich...! Äh, Mausi???"
Doc Flyman ist offline   Mit Zitat antworten
Alt 12-06-2006, 22:33   #4 (permalink)
.:lernwillig:.
 
Benutzerbild von s9548585
 
Registriert seit: Apr 2006
Ort: Bischofswerda - Sachsen
Beiträge: 41
Danke

Hab genau nach so etwas gesucht, da es schnell gehen muss genu das richtig.
__________________
MfG
Martin
s9548585 ist offline   Mit Zitat antworten
Alt 26-10-2010, 10:21   #5 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Ort: Köln
Beiträge: 44
Auch wenn es schon 4 Jahre her ist. Danke für das Script. Du hast mir damit sehr geholfen.
Hallospensa ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 23:59 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2014 Marc Thiele