Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Подменить displayState у стейджа (http://www.flasher.ru/forum/showthread.php?t=214269)

undefined 30.05.2017 12:37

Подменить displayState у стейджа
 
Реально ли переопределить гетер и сетер через прототип?Пробую так:
Код AS3:

Stage.prototype.displayState = function(s:String):void {trace(s)};

Никакой реакции.

caseyryan 30.05.2017 13:34

А как это ты хочешь заменить сеттер / геттер простым методом?
у Stage нет метода displayState()
Ты можешь только методы так поменять

п.с. зачем это тебе вообще?

undefined 30.05.2017 13:58

Цитата:

п.с. зачем это тебе вообще?
пытаюсь прикрутить workaround этого бага.

Цитата:

у Stage нет метода displayState()
А весь Stage как-нибудь своим наследником с переопределенными displayState подменить можно?Т.е. чтоб в с самого начала в this.stage сидел не Stage,а MyStage.

Добавлено через 2 минуты
Цитата:

Ты можешь только методы так поменять
А в чем принципиальное отличие гетера/сетера от обычного метода?

in4core 30.05.2017 14:13

Цитата:

А в чем принципиальное отличие гетера/сетера от обычного метода?
Здрастье приехали. Геттер - возвращает, обычный метод необязательно. Сеттер принимает параметр, обычный метод необязательно. Ну это в теории.

undefined 30.05.2017 14:53

Цитата:

Здрастье приехали. Геттер - возвращает, обычный метод необязательно. Сеттер принимает параметр, обычный метод необязательно. Ну это в теории.
Я про то, что и гетеры и сетеры являются подклассами класса ОбычныеМетоды.И на каком то этапе они преобразуется в эти самые обычные методы.

caseyryan 30.05.2017 19:03

Цитата:

А в чем принципиальное отличие гетера/сетера от обычного метода?
В отсутствие необходимости передавать параметр в с скобках и в раздельном функционировании "присваивателя" и "получателя". Не задавался вопросами различий на уровне среды, но сдается мне, что они вообще не относятся ни к каким обычным методам. Когда ты пытаешься сделать такое присвоение через прототип, ты по факту передаешь туда ссылку на метод, а там ожидается строка

undefined 30.05.2017 19:27

Цитата:

Сообщение от caseyryan (Сообщение 1200748)
В отсутствие необходимости передавать параметр в с скобках и в раздельном функционировании "присваивателя" и "получателя". Не задавался вопросами различий на уровне среды, но сдается мне, что они вообще не относятся ни к каким обычным методам. Когда ты пытаешься сделать такое присвоение через прототип, ты по факту передаешь туда ссылку на метод, а там ожидается строка

У меня цель не выставить значение displayState, а подменить метод для его выставления, но судя по всему через прототип этого сделать нельзя.

caseyryan 30.05.2017 20:16

Да я понимаю какая у тебя цель. Я тебе говорю, что там не ссылка ожидается, а строка.

Wolsh 31.05.2017 00:21

Стейдж вообще инстанцируется не тобой и задолго до того, как твой код вообще загрузится. Ты можешь только поднастроить параметры УЖЕ СОЗДАННОГО инстанса под свой ролик. Но уж никак не поменять члены класса.

undefined 31.05.2017 12:18

Цитата:

Сообщение от Wolsh (Сообщение 1200752)
Стейдж вообще инстанцируется не тобой и задолго до того, как твой код вообще загрузится. Ты можешь только поднастроить параметры УЖЕ СОЗДАННОГО инстанса под свой ролик. Но уж никак не поменять члены класса.

Ну мне по сути это и надо - подкрутить единственный инстанс.Благо стейдж - синглтон.Вопрос только как это сделать для гетера/сетера?


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

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