| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| #Bild = ME# Registriert seit: Nov 2005
Beiträge: 499
| Highest Depth beim Draggen von Objekten
Hi, ich bin grad dabei mich ausfühlich mit der drag funktion zu beschäftigen (ist das überhaupt ne funktion???, egal) auf jeden fall möchte ich, das wenn ich eines meiner 10 objekte anklicke und auf eine andere position dragge, das es immer das höchste objekt ist, heißt: Wenn ich drauf klick, dass es sich über das andere über ihn befindende sichtbar wird. Wie realisiere ich das?
__________________ <<<SPIELE-PROJEKT>>> |
| | |
| | #2 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.594
|
Ein Blick ins Manual bei MovieClip.getNextHighestDepth(); sollte für Klarheit sorgen... Hat außerdem mit Flash 8 nix zu tun.... --> verschoben
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) |
| | |
| | #3 (permalink) |
| #Bild = ME# Registriert seit: Nov 2005
Beiträge: 499
|
Stimmt ok. Aber es ist doch mit Highest depht möglich oder? Das ist doch der parameter mit dem ich den gewünschten effekt erziele oder?
__________________ <<<SPIELE-PROJEKT>>> |
| | |
| | #4 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.109
| Code: mcs = [a_mc, b_mc, c_mc];
mc_swap = Number.MIN_VALUE;
//
for (var i in mcs) {
mc_swap = Math.max(mc_swap, mcs[i].getDepth());
mcs[i].onPress = function() {
this.swapDepths(mc_swap);
this.startDrag();
};
mcs[i].onRelease = stopDrag;
}
__________________ die ultimative antwort auf alle programmierfragen: der debugger! - vor eine programmzeile klicken (==roter punkt) - im menü "debuggen" aufrufen - auf den grünen pfeil klicken - im swf etwas machen (der programmablauf hält beim roten punkt) - links die objekte auswählen, variable, interne... mal alles ansehen! mit dem debugger kann man sein programm schrittweisse abarbeiten und in alle variable reinsehen. mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
| | #5 (permalink) |
| Flash and chips. Registriert seit: Jun 2001 Ort: Graz
Beiträge: 529
| Code: mcs[i].onRelease = stopDrag; ![]() ...das script erzeugt aber nicht den 'echten' windows-effekt, bei dem die nicht betroffenen fenster in der richtigen reihenfolge bleiben... wenn dir die levels an sich egal sind (beispielsweise weil die 10 mcs alleine in einem container liegen), geht es mit Code: mcs = [a_mc, b_mc, c_mc];
for (var i in mcs) {
mcs[i].onPress = function()
{
this.swapDepths(this._parent.getNextHighestDepth());
this.startDrag();
};
mcs[i].onRelease = stopDrag;
} is halt unsauber, da die levels immer weiter hochwandern. dann müsste man noch eine kleine sort()-routine o.ä. dazu schreiben...
__________________ The map is NOT the territory. |
| | |
| | #6 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.109
| stopDrag(); // ausführung einer funktion xxx = stopDrag; // den link auf eine funktion zuweissen stimmt, das ist ja auch der 'echte' flash-mc-effekt ;-) http://www.seibsprogrammladen.de/fra...ispiele/flash6 -> Grundwissen Swap: swapDepts + swap in Reihe + swap nach der Grösse
__________________ die ultimative antwort auf alle programmierfragen: der debugger! - vor eine programmzeile klicken (==roter punkt) - im menü "debuggen" aufrufen - auf den grünen pfeil klicken - im swf etwas machen (der programmablauf hält beim roten punkt) - links die objekte auswählen, variable, interne... mal alles ansehen! mit dem debugger kann man sein programm schrittweisse abarbeiten und in alle variable reinsehen. mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
| | #7 (permalink) | |
| Flash and chips. Registriert seit: Jun 2001 Ort: Graz
Beiträge: 529
|
schon klar, aber ich hab halt immer Code: var x=function()
{
stopDrag();
} ![]() Zitat:
__________________ The map is NOT the territory. | |
| | |
| | #8 (permalink) |
| #Bild = ME# Registriert seit: Nov 2005
Beiträge: 499
|
Klappt ja wunderbar. Nur es ist halt so, das wenn ich ein anderes auswähle, das sich alle anderen wieder in ihre ursprungsform zurückgehen. Also hab ich zwei überlagernde und klicke auf das nächste legt sich das darunterliegende wieder drüber. Verwirrend geschrieben, tut mir leid. Versteht's ihr was ich mein? Wisst ihr was man dagegen machen kann?
__________________ <<<SPIELE-PROJEKT>>> |
| | |
| | #9 (permalink) | |
| Flash and chips. Registriert seit: Jun 2001 Ort: Graz
Beiträge: 529
|
lol... darüber haben wir eigentlich schon diskutiert... Zitat:
__________________ The map is NOT the territory. Geändert von Zett (19-10-2006 um 21:05 Uhr) | |
| | |
| | #10 (permalink) |
| #Bild = ME# Registriert seit: Nov 2005
Beiträge: 499
|
Achso das habt ihr beiden damit gemeint. Habt ich das auch schon gelöst wie ich sehe? Oder was is das genau was da noch steht.
__________________ <<<SPIELE-PROJEKT>>> |
| | |
| | #11 (permalink) |
| Flash and chips. Registriert seit: Jun 2001 Ort: Graz
Beiträge: 529
|
okay, nochmal: wenn du hgseibs script so anpasst: Code: mcs = [a_mc, b_mc, c_mc];
for (var i in mcs) {
mcs[i].onPress = function()
{
this.swapDepths(this._parent.getNextHighestDepth());
this.startDrag();
};
mcs[i].onRelease = stopDrag;
} g, Z.
__________________ The map is NOT the territory. |
| | |
| | #12 (permalink) |
| #Bild = ME# Registriert seit: Nov 2005
Beiträge: 499
|
Ja ok, ich musste das script sowieso schon etwas ummodifizieren. Das mit den neuen leveln ist aber eine ziemlich unsaubere Methode. Für andere movies wäre da kein platz.
__________________ <<<SPIELE-PROJEKT>>> |
| | |
| | #14 (permalink) | |
| voidboy Registriert seit: Sep 2004 Ort: München
Beiträge: 5.588
| Zitat:
PHP-Code: | |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |