Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 24-02-2005, 13:35   #1 (permalink)
Trottel in As
 
Benutzerbild von Pan_Tau
 
Registriert seit: Jul 2002
Ort: Erfurt
Beiträge: 598
Matheformel via Script.

Hi Leutz, weis nicht ob ich hier richtig bin, aber ich frag einfach mal. Is ja auch ne Script frage.

Folgende denke hab ich und weis aber die Formel nicht:

Ich lade verschiedene Bilder (verschiedener Größen) in einen mc und will diesen nun mittig ausrichten.
Als Mathematikaufgabe wollte ich folgendermaßen rechnen.
da ja der Mc die Größe des Bildes annimmt, dacht ich yo is doch ganz einfach.
Formel:

(Bühnengröße - mc_breite):2 = die Position_x //welche ja immer von oben links genommen wird oder?? Vielleicht is das ja der Fehler

Hab das dann folgendermassen in as geschrieben.
PHP-Code:
this.mc._x = (700 this.mc._width)/2
Versetzt hat er es auch, aber net Mittig. Is denn die Formel so richtig????
Hab viel gelesen hier im Forum, aber gibt immer nur mit If Anweisungen und son zeug. Is mir zu kompliziert
Oder könnte der Fehler tatsächlich an dem Mc Mittelpunkt liegen, also das er nicht von Oben links rechnet sondern von der Mitte des Mc's????

Bin über jeden Tip erfreut. Vielen dank schon mal im Vorraus

Mfg Pan_Tau
__________________
Seit dummheit quietscht, renn ich nur noch mit der Ölkanne rum! :-)
Pan_Tau ist offline   Mit Zitat antworten
Alt 24-02-2005, 13:43   #2 (permalink)
Augenmensch
 
Benutzerbild von pito
 
Registriert seit: Aug 2004
Ort: Gelsenkirchen
Beiträge: 558
Die Bühnengrösse kannst du abfragen. Müsste so gehen:
PHP-Code:
 this.mc._x = (Stage.width 2) - ( this.mc._width 2); 
pito ist offline   Mit Zitat antworten
Alt 24-02-2005, 13:48   #3 (permalink)
Trottel in As
 
Benutzerbild von Pan_Tau
 
Registriert seit: Jul 2002
Ort: Erfurt
Beiträge: 598
Wieso nimmst du die Bühnengröße noch mal durch 2???
Das versteh ich net?? Kann ich da nicht die Größe einfach angeben??? In dem Fall 700px.

Danke schon mal für die Mühe und den Tip.

Mfg Taui
__________________
Seit dummheit quietscht, renn ich nur noch mit der Ölkanne rum! :-)
Pan_Tau ist offline   Mit Zitat antworten
Alt 24-02-2005, 14:00   #4 (permalink)
Trottel in As
 
Benutzerbild von Pan_Tau
 
Registriert seit: Jul 2002
Ort: Erfurt
Beiträge: 598
Also, wenn ich die Sache mit dem Taschenrechner durchführe komme ich auf einen x_position von 68,5px. Ich hab ein Bild von 563px breite genommen.
Gebe ich nun einfach den Wert ins script liegt das bild mittig. Also müsste es doch an der Formel liegen oder????

Bitte helft mir, bin nicht so derGenie...

Mfg Taui
__________________
Seit dummheit quietscht, renn ich nur noch mit der Ölkanne rum! :-)
Pan_Tau ist offline   Mit Zitat antworten
Alt 24-02-2005, 14:24   #5 (permalink)
Augenmensch
 
Benutzerbild von pito
 
Registriert seit: Aug 2004
Ort: Gelsenkirchen
Beiträge: 558
Zitat:
Bitte helft mir, bin nicht so derGenie...
Meine Mathelehrerin Frau Lob hat mir am Ende der Oberstufe zwei Punkte geschenkt, damit ich die Abiturzulassung bekomme

Wenn du das Bild in der Mitte der Bühne platzieren willst musst du natürlich die Bühnenbreite durch 2 nehmen, sonst setzt du dein Bild rechst außerhalb der Bühne ab. Vom Bühnenmittelpunkt aus dann noch mal um die halbe Breite des MCs nach links, dann sitzt der mittig.
pito ist offline   Mit Zitat antworten
Alt 24-02-2005, 14:32   #6 (permalink)
Trottel in As
 
Benutzerbild von Pan_Tau
 
Registriert seit: Jul 2002
Ort: Erfurt
Beiträge: 598
Ja schei***, Mathe war nie mein Ding. Das mit der Bühne durch zwei hab ich verstanden. Is ja Logisch, da Flash ja immer vom Mittelpunkt des Bildes ausgeht.

Aber habs jetzt so, wie dein Tip war.
PHP-Code:
    this._mc._x = (Stage.width/2)-(this.mc._width/2); 
aber macht es nicht. er setzt den Mc an den oberne linken rand der Bühne .

Kann es sein, das mein Flash spinnt??? Ich verstehs nicht. Les mich schon sein stunden durch suchen und finden und wenn ich was teste funzt des net.
Muss ich noch was wichtiges beachten dabei???
__________________
Seit dummheit quietscht, renn ich nur noch mit der Ölkanne rum! :-)
Pan_Tau ist offline   Mit Zitat antworten
Alt 24-02-2005, 14:36   #7 (permalink)
Augenmensch
 
Benutzerbild von pito
 
Registriert seit: Aug 2004
Ort: Gelsenkirchen
Beiträge: 558
Du hast am Anfang: "this._mc._x" statt "this.mc._x geschrieben. Ist es das?
pito ist offline   Mit Zitat antworten
Alt 24-02-2005, 14:45   #8 (permalink)
Trottel in As
 
Benutzerbild von Pan_Tau
 
Registriert seit: Jul 2002
Ort: Erfurt
Beiträge: 598
neee das wars auch nicht. Hab es geändert und getestet.

Komische sache.
Hab auch noch was getestet mit der Formel von mir wo ich der Bühnengröße einfach den Wert gegeben habe (eben 700)
Das hab dann einfach statt es nur zu halbieren durch 4 genommen.
PHP-Code:
    this.mc._x = (700-this.mc._width)/4
Flash schiebt es dann mehr nach links, aber nicht mittig. Erst wenn ich den Wert /10 mache ist es mittig. Wie geht denn das??

*brülll* wegen so ner lapalie

Und teste gerade noch mal deins mit nem festen wert.
Also
PHP-Code:
    this.mc._x = (700/2)-(this.mc._width/2); 
Das funzt auch net. Liegt es daran dass ich den MC via Script erstellt habe???
__________________
Seit dummheit quietscht, renn ich nur noch mit der Ölkanne rum! :-)
Pan_Tau ist offline   Mit Zitat antworten
Alt 24-02-2005, 14:57   #9 (permalink)
Augenmensch
 
Benutzerbild von pito
 
Registriert seit: Aug 2004
Ort: Gelsenkirchen
Beiträge: 558
Da muss es irgendwas anderes in der Datei geben, was das Probelm verursacht. Hier habe ich eine Datei mit der fraglichen Zeile und bei mir gehts.

mitte.fla
pito ist offline   Mit Zitat antworten
Alt 24-02-2005, 15:07   #10 (permalink)
Trottel in As
 
Benutzerbild von Pan_Tau
 
Registriert seit: Jul 2002
Ort: Erfurt
Beiträge: 598
Dat Script sieht bis jetzt so aus:

PHP-Code:
this.loadVariables("galinhalt.txt");
ausgabe_txt.text "Lade Daten...";
this.onData = function() {
    
// Felder erzeugen
    
bildEintrag = new Array();
    
bildTitel = new Array();
    
// Einträge Trennen
    
bildEintrag daten.split(",");
    
// BildTitel+URL
    
for (var 0i<bildEintrag.lengthi++) {
        
bildTitel.push(bildEintrag[i].split("|"));
    }
    
// Filmsequenz Erzeugen
    
createEmptyMovieClip("mc"1);
    
// Bild in die Filmsequenz laden
    
loadMovie(bildTitel[0][1], "mc");
    
// Positionieren
    
this.mc._x = (Stage.width/2)-(this.mc._width/2); 
Naja is net von mir geschrieben geb ich zu aber umgewandelt auf meine Bedürfnisse. Und alles geht bis zu dem Blöden Positionieren *heul*

Sorry wenn ich dich damit nerve, aber mir ist das wichtig das herraus zu finden.
__________________
Seit dummheit quietscht, renn ich nur noch mit der Ölkanne rum! :-)
Pan_Tau ist offline   Mit Zitat antworten
Alt 24-02-2005, 15:16   #11 (permalink)
Augenmensch
 
Benutzerbild von pito
 
Registriert seit: Aug 2004
Ort: Gelsenkirchen
Beiträge: 558
"loadMovie()" und "this.mc._x = ... " folgen direkt aufeinander.

Du stellst nicht sicher, daß der mc schon ganz geladen ist, wenn du ihn positionierst. Das könnte das Problem sein.
pito ist offline   Mit Zitat antworten
Alt 24-02-2005, 15:21   #12 (permalink)
Trottel in As
 
Benutzerbild von Pan_Tau
 
Registriert seit: Jul 2002
Ort: Erfurt
Beiträge: 598
ohhh man das wird ja zum Problem. Und wie mach ich das???
Mit ner If abfrage und getBytesloaded gelle??
Mhhh da hörts schon auf mit dem Verständnis für AS.
Ich weis, das das jetzt ne blöde Frage is (frga ja auch nicht ob du ne Kaffemaschiene für mich hast ), aber könntest du mir nen Ansatz scripten, womit ich das dann mal selbst umschreiben könnte??

Ich lerne nur durch so was. Hoffentlich is das jetzt net zu viel des Gutem von dir

Danke schon mal
Pan_Tau
__________________
Seit dummheit quietscht, renn ich nur noch mit der Ölkanne rum! :-)
Pan_Tau ist offline   Mit Zitat antworten
Alt 24-02-2005, 15:33   #13 (permalink)
Augenmensch
 
Benutzerbild von pito
 
Registriert seit: Aug 2004
Ort: Gelsenkirchen
Beiträge: 558
Mit onData habe ich nicht so die Erfahrung. Das springt doch an, wenn ein Ladevorgang beendet ist, oder?

Vielleicht wenn man dem mc auch eine onData gibt?
PHP-Code:
this.mc.onData=function(){
       
this.mc._x = (Stage.width/2)-(this.mc._width/2);

Bin aber nicht wirklich firm mit diesen Dingen.
pito ist offline   Mit Zitat antworten
Alt 24-02-2005, 15:39   #14 (permalink)
Trottel in As
 
Benutzerbild von Pan_Tau
 
Registriert seit: Jul 2002
Ort: Erfurt
Beiträge: 598
Jupp deswegen liegt ja die Positionierung schon in der onData Funktion drin.
Glaub nicht das man es noch mal einfügen muss.
Aber wie war das jetzt mit der zuladen abfrage??? Kannst mir da nen Tip geben?? Vielleicht liegts ja wirklich daran.
__________________
Seit dummheit quietscht, renn ich nur noch mit der Ölkanne rum! :-)
Pan_Tau ist offline   Mit Zitat antworten
Alt 24-02-2005, 16:07   #15 (permalink)
Augenmensch
 
Benutzerbild von pito
 
Registriert seit: Aug 2004
Ort: Gelsenkirchen
Beiträge: 558
Es gibt da bestimmt raffiniertere Lösungen, aber spontan fällt mir da nur so was ein:
PHP-Code:
 mc.onEnterFrame=function(){
       
_x = (Stage.width/2)-(_width/2);

Das würde in jedem Fall gehen.
pito 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 19:54 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele