Ontzettend
%Europe/Berlin %028 %2007, 00:40
Hallo!
Ik heb dit fisheye menu (http://www.samuelwan.com/downloads/com.samuelwan.eidt/fisheyemenu/FisheyeMenuDemo.html) omgebouwd voor AS3, en ik gebruik em voor een rijtje TextButtons (extends SimpleButton). Deze buttons zijn childs van een Sprite, en als ik over de Sprite hover wordt de fisheye actief. Aan de linkerkant van de buttons heb ik een marge van 10 pixels gelaten, en als i daarbinnen hover werkt de fisheye prima, de hoogte en de y-positie van de buttons worden uitstekend gerenderd. Echter, als ik over de buttons zelf hover, gaat er iets mis met de fisheye, en worden de hoogtes van de buttons niet geleidelijk kleiner, maar dat sprint een beetje irritant heen en weer tussen de maximale (die een button heeft als je er met de muis op staat) en minimale grootte.
Als je over de buttons hover, wordt er geswitcht tussen hun 'overState' and 'upState'. Er lijkt een conflict te zijn tussen het setten van de hoogte-waardes door het fisheye-algoritme en door het hoveren over de buttons (waardoor ws. de hoogte terug wordt gezet naar de waarde die de button kreeg toen deze geïnstantieerd werd.)
Is er enige manier om dit probleem te verhelpen? In het bovenstaande fisheye menu voorbeeld wordt er een AS2 'FSelectableListClass' gebruikt, maar ik kan geen AS3 class vinden die hetzelfde doet. Dien ik iets anders dan TextButtons te gebruiken om mijn menu te vullen? Want de fisheye techniek doet het prima.
Hier twee regeltjes code uit de Menu class. De buttons zitten in een Array voor easy access:
var item:TextButton = kwButtons[i];
item.height = var h:Number = getAscendingH(i, focusSpan.beginIndex-1, focusSpan.yMin, DISTORTION);
Elke TextButton state is een Sprite met een label (TextField) en een background (Shape). De hoogte van de button wordt bepaald als deze wordt geïnstantieerd, en dan is z'n waarde de maximale waarde die hij kan krijgen (= als erop gefocussed wordt in het fisheye menu mits deze normaal werkt).
Als je enig idee hebt hoe ik dit moet oplossen, dan hoor ik graag van je! Ik heb em op Actionscript.org ook in het forum (http://www.actionscript.org/forums/showthread.php3?t=156446) gegooid, daar staat nog wat extra info. Bedankt vast voor de hulp!
Ik heb dit fisheye menu (http://www.samuelwan.com/downloads/com.samuelwan.eidt/fisheyemenu/FisheyeMenuDemo.html) omgebouwd voor AS3, en ik gebruik em voor een rijtje TextButtons (extends SimpleButton). Deze buttons zijn childs van een Sprite, en als ik over de Sprite hover wordt de fisheye actief. Aan de linkerkant van de buttons heb ik een marge van 10 pixels gelaten, en als i daarbinnen hover werkt de fisheye prima, de hoogte en de y-positie van de buttons worden uitstekend gerenderd. Echter, als ik over de buttons zelf hover, gaat er iets mis met de fisheye, en worden de hoogtes van de buttons niet geleidelijk kleiner, maar dat sprint een beetje irritant heen en weer tussen de maximale (die een button heeft als je er met de muis op staat) en minimale grootte.
Als je over de buttons hover, wordt er geswitcht tussen hun 'overState' and 'upState'. Er lijkt een conflict te zijn tussen het setten van de hoogte-waardes door het fisheye-algoritme en door het hoveren over de buttons (waardoor ws. de hoogte terug wordt gezet naar de waarde die de button kreeg toen deze geïnstantieerd werd.)
Is er enige manier om dit probleem te verhelpen? In het bovenstaande fisheye menu voorbeeld wordt er een AS2 'FSelectableListClass' gebruikt, maar ik kan geen AS3 class vinden die hetzelfde doet. Dien ik iets anders dan TextButtons te gebruiken om mijn menu te vullen? Want de fisheye techniek doet het prima.
Hier twee regeltjes code uit de Menu class. De buttons zitten in een Array voor easy access:
var item:TextButton = kwButtons[i];
item.height = var h:Number = getAscendingH(i, focusSpan.beginIndex-1, focusSpan.yMin, DISTORTION);
Elke TextButton state is een Sprite met een label (TextField) en een background (Shape). De hoogte van de button wordt bepaald als deze wordt geïnstantieerd, en dan is z'n waarde de maximale waarde die hij kan krijgen (= als erop gefocussed wordt in het fisheye menu mits deze normaal werkt).
Als je enig idee hebt hoe ik dit moet oplossen, dan hoor ik graag van je! Ik heb em op Actionscript.org ook in het forum (http://www.actionscript.org/forums/showthread.php3?t=156446) gegooid, daar staat nog wat extra info. Bedankt vast voor de hulp!