Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-12-2004, 13:57   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 34
Hex-Wert am Mac ganz anders???

Hi,
habe da eine kleines Problem mit einem Script. Es geht um folgendes:
Habe eine Colorfade-Script das ich auf einen MC liegen habe, je nach dem wo ich gerade auf meiner Seite bin, gebe ich einen neuen HEX-Wert über eine funktion an und schon ändert mein MC die Farbe, super!

Leider funktioniert das scheinbar nur auf dem PC, am Mac wird nicht die jeweilige wunschfarbe angezeigt! Also aus rot wird blau usw....

Kann mir jemand sagen was ich da vielleicht ändern kann, ich selber habe nur einen PC, kann also nicht wirklich testen ob es auch auf dem Mac funzt.

Gruß
Hans
schmalhans ist offline   Mit Zitat antworten
Alt 16-12-2004, 14:26   #2 (permalink)
visitor
 
Registriert seit: Nov 2003
Ort: Stuttgart
Beiträge: 600
hey...hatte vor nem Jahr das selbe Problem, ebefalls mit nem Colorfader, der die HEX-Werte aus'm Array liest.
Mein Ding war, dass meine Navi mit den Farbwerten verbunden war...ergo...MacUser konnte nicht navigieren.

Leider hab ich bis heut keine Antwort darauf gefunden
neo14 ist offline   Mit Zitat antworten
Alt 16-12-2004, 14:33   #3 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 34
Hmm... Die function wird ja ausgeführt, nur die Farbangabe weicht ab!
Navigieren kann man immer noch, scheint nur bedingt das selbe problem zu sein.

Danke
Hans
schmalhans ist offline   Mit Zitat antworten
Alt 16-12-2004, 14:36   #4 (permalink)
visitor
 
Registriert seit: Nov 2003
Ort: Stuttgart
Beiträge: 600
...passt schon das problem.
meine navi hat die farbwerte ausgelesen und je nach hex-code eine bestimmte seite aufgerufen.

also wird die funktion zwar ausgeführt, der hexwert aber falsch übermittelt!
neo14 ist offline   Mit Zitat antworten
Alt 16-12-2004, 14:43   #5 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 34
O.K.
woran kann das liegen? Wie gesagt am PC geht es ohne Probleme!
Vielleicht liegt das am Mac Flash-Player der die Umwandlung von HEX in RGB falsch interpretiert?

Bin schon total am verzeifeln
Hans
schmalhans ist offline   Mit Zitat antworten
Alt 16-12-2004, 15:49   #6 (permalink)
mentally ill
 
Registriert seit: Aug 2004
Beiträge: 172
hi,
zeig mal dein AS mit der new Color() anweisung.

evt. liegts ja daran...

ich nehme sonst immer das hier:
PHP-Code:
var Farbe = new Color(ziel_mc);
Farbe.setRGB(0x787878); 
auf mac und pc siehts bei mir gleich aus...
(MAC OS X 10.3.7 | Windows 98 SE)

grüße
markus
__________________
there is no place like 127.0.0.1
--------------------------------------------------
[STUFF] E-Mail Liste für Newsletter o.ä.
[STUFF] MySQLConnector Klasse
menty ist offline   Mit Zitat antworten
Alt 16-12-2004, 16:16   #7 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 34
Hallo,
also in der Hauptzeitleiste habe ich ein Array:

PHP-Code:
farben=["8A0606","2356ff","225454"]; 
Dann den Aufruf der Funktion, z.B.:

PHP-Code:
function hgfade(wert) {
    
bg.newHEX farben[wert];

Und im MC der da den Namen bg trägt eben:

PHP-Code:
onClipEvent (load) {
    var 
5
    
myColor = new Color(this);
    var 
cRGB myColor.getRGB();
    var 
cHEX cRGB.toString(16);
    var 
newRGB cRGB
    var 
newHEX cHEX;
}
onClipEvent (enterFrame) {
    if (
cHEX<>newHEX) {
        
// Aufteilung der 3 Grundfarben des Hexwertes!
        
var cHEX_r parseInt(cHEX.substring(02), 16);
        var 
newHEX_r parseInt(newHEX.substring(02), 16);
        var 
cHEX_g parseInt(cHEX.substring(24), 16);
        var 
newHEX_g parseInt(newHEX.substring(24), 16);
        var 
cHEX_b parseInt(cHEX.substring(46), 16);
        var 
newHEX_b parseInt(newHEX.substring(46), 16);
        
// rotwerte
        
if (cHEX_r<>newHEX_r) {
            var 
r_diff Math.round((newHEX_r-cHEX_r)/a);
            if (
Math.abs(r_diff)<1) {
                
cHEX_r newHEX_r;
            } else {
                
cHEX_r += r_diff;
            }
        }
        
// grünwerte
        
if (cHEX_g<>newHEX_g) {
            var 
g_diff Math.round((newHEX_g-cHEX_g)/a);
            if (
Math.abs(g_diff)<1) {
                
cHEX_g newHEX_g;
            } else {
                
cHEX_g += g_diff;
            }
        }
        
// blauwerte
        
if (cHEX_b<>newHEX_b) {
            var 
b_diff Math.round((newHEX_b-cHEX_b)/a);
            if (
Math.abs(b_diff)<1) {
                
cHEX_b newHEX_b;
            } else {
                
cHEX_b += b_diff;
            }
        }
        
// weiter verarbeiten
        
cHEX_r cHEX_r.toString(16);
        
cHEX_g cHEX_g.toString(16);
        
cHEX_b cHEX_b.toString(16);
        while(
cHEX_r.length 2) {
            
cHEX_r "0"+cHEX_r;
        }
        while(
cHEX_g.length 2) {
            
cHEX_g "0"+cHEX_g;
        }
        while(
cHEX_b.length 2) {
            
cHEX_b "0"+cHEX_b;
        }

        
cHEX cHEX_r+cHEX_g+cHEX_b
        
myColor.setRGB(parseInt(cHEX16)); 
        
_root.hexcheck=cHEX;

    }

Aber wie gesagt, funzt nur am PC!

Grüße
Hans

Geändert von schmalhans (16-12-2004 um 16:18 Uhr)
schmalhans ist offline   Mit Zitat antworten
Alt 16-12-2004, 16:21   #8 (permalink)
mentally ill
 
Registriert seit: Aug 2004
Beiträge: 172
hab jetzt leider feierabend,

aber würde mal behaupten es liegt an deiner RGB definition..

also

PHP-Code:
 farben=["8A0606","2356ff","225454"]; 
versuche das mal in

PHP-Code:
 farben=["0x8A0606","0x2356ff","0x225454"]; 
umzuarbeiten oder dort wo du die werte zuweist ein "0x" als string davor zusetzen...

grüße
markus

//EDIT

PHP-Code:
myColor.setRGB("0x" parseInt(cHEX16)); 
so in etwa...
__________________
there is no place like 127.0.0.1
--------------------------------------------------
[STUFF] E-Mail Liste für Newsletter o.ä.
[STUFF] MySQLConnector Klasse

Geändert von menty (16-12-2004 um 16:23 Uhr)
menty ist offline   Mit Zitat antworten
Alt 16-12-2004, 16:29   #9 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 34
Hi,
die Wertezuweisung ist so schon richtig, wenn man ein "0x" + davor setzt klappt das Teil total zusammen!

Gruß
Hans
schmalhans ist offline   Mit Zitat antworten
Alt 17-12-2004, 13:21   #10 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 34
Hallo,
kann mir denn wirklich keiner helfen?

Bitte
Hans
schmalhans ist offline   Mit Zitat antworten
Alt 17-12-2004, 13:35   #11 (permalink)
Art Director
 
Benutzerbild von tomtom69
 
Registriert seit: Sep 2002
Ort: Mülheim/Ruhr
Beiträge: 698
… was ist mit dem "#" Zeichen vor dem Wert?

Arbeite selber mit Mac und hatte diese Probs noch net!

Schau mal ins Art Directors Toolkit …

Oder poste mal Deine Fla, dann schau ich mal auf'm Mac

– OsX 10.3.6
__________________
__________________________________________
"… blubb!"
tomtom69 ist offline   Mit Zitat antworten
Alt 17-12-2004, 14:02   #12 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 34
Hallo tomtom69,
mit einem '#' oder '0x' zerlegt es das Ding! die Wertezuweisung muss so wie ich es im meinem Array habe stehen, sonst geht es nicht mal mehr am PC.

In meinem Post etwas weiter oben habe ich den Code abgebildet.

Grüße
Hans
schmalhans ist offline   Mit Zitat antworten
Alt 17-12-2004, 14:38   #13 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 34
Hallo,
habe jetzt mal eine .fla erstellt!

Bitte um Hilfe
Hans
Angehängte Dateien
Dateityp: zip farbfade.zip (6,6 KB, 16x aufgerufen)
schmalhans ist offline   Mit Zitat antworten
Alt 17-12-2004, 14:49   #14 (permalink)
Art Director
 
Benutzerbild von tomtom69
 
Registriert seit: Sep 2002
Ort: Mülheim/Ruhr
Beiträge: 698
… mmmmhhhhhhhhh

… hab mal lustiger Weise die HEX Werte im String in Frame 1 geändert.

Es passiert rein gar nichts - wie kommts?

__________________
__________________________________________
"… blubb!"
tomtom69 ist offline   Mit Zitat antworten
Alt 17-12-2004, 15:15   #15 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
ein einfacher trace-befehl wird dir hoffentlich weiter helfen. was du zusammengekocht hast, das musst du schon selbst auslöffeln.
ActionScript:
  1. .....
  2.         // ende toString() gefixt !
  3.         cHEX = cHEX_r+cHEX_g+cHEX_b; // setzen des aktuellen HEX Wert
  4.         myColor.setRGB(parseInt(cHEX, 16)); // setzen der Farbe des Objektes
  5.         _root.hexcheck=cHEX;
  6. trace(cHEX_r+" // "+cHEX_g+" // "+cHEX_b);
  7.     }
  8. }
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib 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 15:12 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele