Zurück   Flashforum > Flash > Flash erweitern > Komponenten und SmartClips

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01-10-2008, 14:33   #1 (permalink)
Neuer User
 
Benutzerbild von maschka
 
Registriert seit: Jun 2003
Beiträge: 194
Skin Größe anpassen

Hi,

ich hoffe, die Frage wurde nicht bereits beantwortet, aber ich konnte leider nichts dazu finden.

Folgendes:
Ich benutze eine Slider-Komponente aus Flash und möchte nun unter anderem die Eigenschaft "SliderTrack_skin" anpassen.
In allen Hilfen, die ich gefunden habe, wird ausführlich erklärt, wie man Farben anpasst. Ich konnte aber leider nirgends finden, wie man z.B.: die Höhe anpasst. Flash skaliert die Höhe immer zurück auf seine Standard-Höhe.

Ich hab jetzt zwei Not-Varianten gefunden, mit denen ich das umgehen kann, die sind aber beide super hässlich.

1:
PHP-Code:
var mySlider:Slider = new Slider();
mySlider.getChildAt(0).height 100
2:
Ich mach den Skin transparent und arbeite einfach mit Hintergrundbildern.

Aber das kann doch nicht der Weg sein oder?
Es muss doch eine praktikable Möglichkeit geben, die Größen der Skins zu verändern?

Weiß da jemand was?

danke
maschka
maschka ist offline   Mit Zitat antworten
Alt 01-10-2008, 15:27   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
->verschoben
  Mit Zitat antworten
Alt 21-12-2008, 22:23   #3 (permalink)
Neuer User
 
Registriert seit: Dec 2008
Beiträge: 8
Ich hab genau das selbe Problem. Haste irgendne gute Lösung gefunden?
Teklan ist offline   Mit Zitat antworten
Alt 04-12-2009, 00:22   #4 (permalink)
Neuer User
 
Registriert seit: May 2002
Ort: Berlin
Beiträge: 13
Hier ne saubere (naja) Lösung per Code.
Falls mit der Bib gearbeitet wird, die Verknüpfung des Sliders in der Bib wie folgt setzen:

Klasse: "CustomSlider"
BasisKlasse: "flash.display.MovieClip"

PHP-Code:
package {

    
import flash.display.Sprite;
    
import flash.utils.getDefinitionByName;
    
import fl.controls.Slider;
    
    public class 
CustomSlider extends Slider {

        
override protected function configUI():void{
            
            
super.configUI();
            
            var 
cls:Class;
            
            
cls getDefinitionByName("SliderThumb_upSkin") as Class;
            var 
tmpThumb:Sprite = new cls();
            
thumb.setSize(tmpThumb.widthtmpThumb.height);
            
            
cls getDefinitionByName("SliderTrack_skin") as Class;
            var 
tmpTrack:Sprite = new cls();
            
track.height tmpTrack.height;
        }
    }

"thumb"- Skins sind BaseButtons/UIComponents, daher "setSize()".
"track" - Skins sind MovieClip/Sprite, daher "height".


[EDIT]
Falls der Slider selbst wiederum in einer SWC genutzt wird (z.B. als asset für FlashDevelop) gibts nen NullRef Error bei callLater.
In diesem Fall muss man die Größen der Skins hard coden und immer ändern, wenn man die Skins in der Bib ändert, sieht dann z.B. so aus:

PHP-Code:
package {
    
import fl.controls.Slider;

    public class 
CustomSlider extends Slider {

        
override protected function configUI():void{
            
super.configUI();
            
thumb.setSize(2223);
            
track.height 9;
        }
    }

Wer braucht schon skinbare Slider ? ... is doch fubbes, für die paar (Millionen) Flasher machen wir das nicht extra einfach...

Geändert von lusida (04-12-2009 um 02:08 Uhr)
lusida 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 aus.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



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

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


Copyright ©1999 – 2012 Marc Thiele