PDA

Просмотр полной версии : Проблема с узнаванием родного класса ММ


wvxvw
24.12.2006, 04:32
**Error** C:\Documents and Settings\....\Local Settings\Application Data\Macromedia\Flash 8\en\Configuration\Classes\FP7\TextField.as: Line 7: The name of this class, 'TextField', conflicts with the name of another class that was loaded.
{

**Error** E:\......\Source\CardsManager.as: Line 263: There is no method with the name 'TextField'.
var _css:TextField.StyleSheet = new TextField.StyleSheet();

Total ActionScript Errors: 2 Reported Errors: 2

Често... я не совсем понял вообще, чего от меня хотят в этом сообщении =(
Буду признателен, если растолкуете...

etc
24.12.2006, 13:11
А что у тебя в импортах написано? И ты под семерку делаешь или восьмерку?

DarkLight
24.12.2006, 14:43
Снеси ASO, иногда помогает

wvxvw
24.12.2006, 19:08
2 __etc:
В импорте было:
import TextField.StyleSheet;
Делаю в восьмерке, компилирую под семерку.

2 DarkLight:
Да, спасибо, помогло, странно то, что ситуация повторилась =\

iNils
24.12.2006, 20:08
Из хелпа (http://www.sharedfont.com/liveDocs/Help/UsingActionScript/00001111.html)The name of this class, ‘<A.B.C>’, conflicts with the name of another class that was loaded, ‘<A.B>’ (Имя класса ‘<A.B.C>’ конфликтует с именем другого загруженного класса, ‘<A.B>’).

(Ошибка возникает, когда компилятор ActionScript 2.0 не может откомпилировать класс из-за того, что полное имя существующего класса является частью имени другого класса. Например, компиляция класса mx.com.util генерирует ошибку1141 в случае, когда class mx.com есть скомпилированный класс.)
В данном случаи, у нас есть класс TextField уже скомпилирован, но он есть и в пути TextField.StyleSheet.

Возможные решения:
1. Забить на это и запускать компиляцию два раза подряд (у меня по крайне мере работало) или чистить каждый раз aso.
2. Перевести системное время на сутки назад.
3. Попробывать скопировать класс StyleSheet в другое место и сменить для него пакет. Скажем сделать bypass.StyleSheet вместо TextField.StyleSheet (это только что из головы пришло и за результат не вручаюсь, но если попробуешь и будет работать, то плиз напиши об этом тут).

etc
24.12.2006, 21:10
Вообще, StyleSheet — это единственный класс, который сделан так криво :)

wvxvw
25.12.2006, 04:54
2 iNils:
Спасибо. Попробую, интересно, просто сейчас немного напряжно со временем, уже после НГ (проект все равно позже сдавать =) Пока что просто каждый раз как ошибка выпадает удаляю ASO файлы. К сожалению, просто забить на ошибку не получается, готовая флешка начинает глючить в самых непредсказуемых местах =(
Извините, сейчас просто нет особенно времени разбираться... а есть какая-то жизненная необходимость в том, чтобы StyleSheet находился в пакете TextField?

iNils
25.12.2006, 08:03
Вообще, StyleSheet — это единственный класс, который сделан так криво :)
Извините, сейчас просто нет особенно времени разбираться... а есть какая-то жизненная необходимость в том, чтобы StyleSheet находился в пакете TextField?
Я не вижу такой. Понятно, что StyleSheet нужен только для TextField, но зачем его именно в такой пакет было помещать, мне не понятно. Ведь есть же flash.text.* в котором находится TextRenderer, почему не туда?

DarkLight
25.12.2006, 18:31
Вообще, StyleSheet — это единственный класс, который сделан так криво :)
Нет. Такая же проблема у меня возникала с System.capabilities

iNils
25.12.2006, 18:46
Нет. Такая же проблема у меня возникала с System.capabilitiesИ по аналогии можно ждать тех же проблем от System.IME и System.security. Кстати, почему security написано с маленькой буквы, а не с большой? А System.* и TextField.* наоборот? Если бы их писали с маленькой то проблемы бы не было.