Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   как копировать объект TextFormat? (http://www.flasher.ru/forum/showthread.php?t=111767)

Mnilionic 07.05.2008 17:20

как копировать объект TextFormat?
 
...через обычное "=" присваивается ссылка
Можно ли сделать копию без цикла по всем свойствам?

Vertax 07.05.2008 17:37

Код:

TextFormat.prototype.copy = function ()
{
        var nOBJ = new TextFormat();
        for (var i in this) nOBJ[i] = this[i];
        return nOBJ;
}

TF = new TextFormat();
TF.font = "Arial";
TF2 = TF.copy();
TF2.color = 0xFF0000;

TXT1.setTextFormat(TF);
TXT2.setTextFormat(TF2);


Mnilionic 07.05.2008 17:42

спасибо для TextFormat сработает

это расширения для Обжектов в целом.
а если свойством объекта является тоже объект? ;)

+

вижу :)

Mnilionic 07.05.2008 20:27

Если указать тип объекта появляется ошибка, что мол нет такого метода.
При такой работе вообще нельзя указывать тип?
Код:

TF:TextFormat = new TextFormat();
TF.font = "Arial";
TF2 = TF.copy(); // !


Obi 08.05.2008 11:28

Код:

function getCopy(t:TextFormat):TextFormat {
        var newTF:TextFormat = new TextFormat();
        for (var i in t) newTF[i] = t[i];
        return newTF;
}
var TF:TextFormat = new TextFormat();
TF.font = "Arial";
var TF2:TextFormat = getCopy(TF);
trace(TF2.font);


Mnilionic 08.05.2008 15:02

речь именно о prototype.

Vertax 08.05.2008 15:48

В том то и дело: укажешь тип - забудь о прототипах. Если хоца (нужно) указывать, то как предложил тов Obi.

chingachgoog 08.05.2008 16:05

Компилятор всегда можно надуть, если жить нельзя без типизации :)

Код:

var nf:TextFormat=new TextFormat()

TextFormat.prototype.s=function(){
        trace("!")
}

nf['s'] ()


Mnilionic 08.05.2008 21:08

Vertax, понятно.

chingachgoog, жить можно, просто не сразу воткнул почему выпадала ошибка :)
с массивом забавно.


Часовой пояс GMT +4, время: 07:05.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.