Zurück   Flashforum > Flash > Flash Einsteiger

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 30-11-2011, 18:31   #1 (permalink)
Neuer User
 
Registriert seit: Apr 2006
Beiträge: 855
scroller problem

bin dabei ein einfache multiple galerie zu erstellen.

mein problem schwerigkeit liegt dran, thumbs skroller nach content länge anzupassen, wenn ich verschieden viele kategorie elemente habe.

wie könnte ich so was am besten umsetzen. dass der skroller benutz wird, wenn zb. mc, in dem thumbs geladen wird größer als stage ist oder kleiner ist.
palpalo ist offline   Mit Zitat antworten
Alt 01-12-2011, 22:49   #2 (permalink)
Balkan Boris
 
Benutzerbild von marconi
 
Registriert seit: Mar 2007
Beiträge: 283
so ganz verstehe ich dich nicht, aber ich denke du meinst, dass wenn die thumbs insgesamt breiter als die
stage sind, er die scroll-funktion verwenden soll.

wenn dem so ist kannst du das z.B. mit einer if-abfrage meistern:

PHP-Code:
if(alleThumbs._width >= Stage.width) {
    
benutze scroller
} else {
    
benutze keinen scroller

__________________
Unbekannt verzogen (Heute um 03:44 Uhr)
marconi ist offline   Mit Zitat antworten
Alt 01-12-2011, 22:58   #3 (permalink)
+ Zimt & Zucker
 
Registriert seit: Mar 2006
Ort: hinterm Mond gleich links
Beiträge: 2.042
Die Fragestellung ist sehr vielfältig interpretierbar, kannst du bitte noch mal versuchen dein Problem genauer zu beschreiben?
__________________
anbei Grüße vom milchreis: Viva la [Silb]

[Von null auf Flash in einem Klick.] <<< klick
milchreis ist offline   Mit Zitat antworten
Alt 03-12-2011, 13:32   #4 (permalink)
Neuer User
 
Registriert seit: Apr 2006
Beiträge: 855
ok dann versuche ich mein problem etwas besser zu beschreiben.
es geht dran, dass ich ein galerie erstellen will und zwar mit mehr kategorien.

- Aufruf der einzelne kategorien klappt.
- Skrollen der thumbs(wenn thumbs con breiter ist als stage) klappt auch.

sobald aber ein kategorie weniger elemente hat, so dass der thumbs con schmaller als der stage breite ist, soll skroller event nicht benuzt werden und content auf stage zentriert werden.
genau hier liegt mein problem, irgend wie thuumbs con & maske nicht richtig zentriert wird, wenn ich swf auf full size schalte.

hier nochmal code bzs. fla als cs4 gespeichert.


PHP-Code:
stage.align StageAlign.TOP_LEFT;
stage.scaleMode StageScaleMode.NO_SCALE;
//
// erstelle leere mc
var con:MovieClip = new MovieClip(); 
addChild(con);
//
// erstelle con_hg
var con_hg:Sprite = new Sprite();
con_hg.graphics.beginFill(0xff6600);
con_hg.graphics.drawRect(0,0,stage.stageWidth,100);
con_hg.graphics.endFill();
con.addChild(con_hg);
//
// erstelle th_con mask
var th_con_mask:Sprite = new Sprite();
th_con_mask.graphics.beginFill(0xffcccc);
th_con_mask.graphics.drawRect(0,0,stage.stageWidth-10,90);
th_con_mask.graphics.endFill();
con.addChild(th_con_mask);
th_con_mask.5;
th_con_mask.5;
//
// erstelle thumbs con
var th_con:MovieClip = new MovieClip(); 
con.addChild(th_con);
th_con.5;
th_con.5;
//
//
// setze mask auf th_con
th_con.mask th_con_mask;
//
//
// array mit der zu erstellender thumbs anzahl
const ANZAHL:Array = [15,20,25];
//
// bts event
bt_1.buttonMode true;
bt_1.addEventListener(MouseEvent.CLICK,erstelle);
bt_2.buttonMode true;
bt_2.addEventListener(MouseEvent.CLICK,erstelle);
bt_3.buttonMode true;
bt_3.addEventListener(MouseEvent.CLICK,erstelle);
//
//
// variable zum scrollen
var scrollMin:Number;
var 
scrollMax:Number;
//
// array im den thumbs objekte speichert wird
var tmp:Array = [];
//
//
// funktion zum ersttelen von thumbs box
function erstelle(evt:MouseEvent){
    
// ermittle anzahl um clip zu erstellen
    
var total:int;
    switch (
evt.target)
    {
        case 
bt_1:
            
total ANZAHL[0];
            break;
        case 
bt_2:
            
total ANZAHL[1];
            break;
        case 
bt_3:
            
total ANZAHL[2];
            break;
    }
    
// alles auf anfang
    
while (th_con.numChildren
        
th_con.removeChildAt(0);
        
removeEventListener(MouseEvent.MOUSE_MOVE,eventMouseMove);
    
    
th_con.5;
    
tmp = [];
    
    
//
    //schleife zum erstellen von clips
    
for(var i:uint 0i<totali++){
        
//
        
var th:MovieClip = new MovieClip(); 
        
th_con.addChild(th);
        
th.buttonMode true;
        
//
        
var th_hg:Sprite = new Sprite();
        
th.addChild(th_hg);
        
th_hg.graphics.beginFill(0x0000FF);
        
th_hg.graphics.drawRect(0,0,90,90);
        
th_hg.graphics.endFill();
        
//
        
th.= (th.width+5)*i;
        
tmp.push(th);
    }
    
//
    
scrollMax 0;
    
scrollMin th_con_mask.width-th_con.width
    if(
scrollMax-scrollMin>0)
    {
        
addEventListener(MouseEvent.MOUSE_MOVEeventMouseMove);
    }
}
//
//
// maus hat sich bewegt! 
const SPEED:Number 5;
var 
scrollspeed:Number 0;
function 
eventMouseMove(evt:Event):void {
    if (
th_con_mask.hitTestPoint(mouseX,mouseY))
    {
        if (
mouseX<th_con_mask.width/4)
        {
            
// maus links, dann scrolle nach links
            
scrollspeed SPEED;
            
th_con.addEventListener(Event.ENTER_FRAME,eventEnterFrame);
        }
        else if (
mouseX>stage.stageWidth-th_con_mask.width/4)
        {
            
// maus rechts, dann scrolle nach rechts
            
scrollspeed = -SPEED;
            
th_con.addEventListener(Event.ENTER_FRAME,eventEnterFrame);
        }
        else
        {
            
// maus in der mitte, dann nicht scrollen
            
scrollspeed 0;
            
th_con.removeEventListener(Event.ENTER_FRAME,eventEnterFrame);
        }
    }
}

function 
eventEnterFrame(evt:Event):void {
    
th_con.+= scrollspeed;
    
// 
    
if (scrollspeed<&& th_con.x<scrollMin)
    {
        
th_con.x=scrollMin;
        
th_con.removeEventListener(Event.ENTER_FRAME,eventEnterFrame);
    }
    else if (
scrollspeed>&& th_con.x>scrollMax)
    {
        
th_con.x=scrollMax;
        
th_con.removeEventListener(Event.ENTER_FRAME,eventEnterFrame);
    }
    
stageAlign();
}
//
//
function stageAlign(){
    
//
    
con_hg.width stage.stageWidth;    
    
con.= (stage.stageHeight-con.height);
    
//
    
if(th_con.width stage.stageWidth){
        
th_con.removeEventListener(Event.ENTER_FRAME,eventEnterFrame);
        
th_con_mask.width th_con.width;
        
th_con.= (stage.stageWidth th_con.width)/2;
        
th_con_mask.= (stage.stageWidth th_con_mask.width)/2;
    }else{
        
th_con_mask.width stage.stageWidth;
        
th_con.5;
        
th_con_mask.5;
    }
    
//
    // define scroll area
    
scrollMax 0;
    
scrollMin th_con_mask.width-th_con.width;
    
//
    // scrolle if need
    
if(scrollMax-scrollMin>0){
        
addEventListener(MouseEvent.MOUSE_MOVEeventMouseMove);
    }
}
//
stageAlign();
//
stage.addEventListener(Event.RESIZEstageResize);
function 
stageResize(e:Event):void{
    
stageAlign();

Angehängte Dateien
Dateityp: fla m_gal.fla (7,6 KB, 5x aufgerufen)

Geändert von palpalo (03-12-2011 um 13:33 Uhr)
palpalo ist offline   Mit Zitat antworten
Alt 04-12-2011, 14:48   #5 (permalink)
Neuer User
 
Registriert seit: Apr 2006
Beiträge: 855
bitte um ratschläge, wie ich das problem lösen kann.

wenn ich zwischen kategorien wechsle und auf fullscrenn oder & stage resize dann verschiebt sich der thumbs content.
palpalo 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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Flash 8] Scroller Problem - Scroller Zustand palpalo Flash Einsteiger 0 25-10-2010 20:07
Scroller Problem cryo HTML und CSS 2 27-11-2008 19:06
Problem mit dem Scroller. DP-Art Flash Einsteiger 4 26-09-2006 10:54
Scroller Problem! Scroller will nicht mit Mausrad scrollen ThommyXXL Flash MX 2004 4 22-03-2006 22:45
problem mit scroller echo5-7 Flash MX 6 25-10-2002 16:27


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:29 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele