
16.12.2008, 07:39
|
|
Регистрация: Feb 2008
Сообщений: 14
|
Есть ответ. Все было просто и легко. Вот как на этот вопрос ответил один мой знакомый:
var externalXML:XML = new XML( <XMLdata><backgroundColor>0xd7a4c7</backgroundColor></XMLdata>);
trace(externalXML.backgroundColor); // Выдаёт 0xd7a4c7
var convert:uint = uint(externalXML.backgroundColor); // Конвертируем строковое значение в uint
trace("uint interpretation: ", convert); // Выводит 14132423 - Это не число целое ,беззнаковое, типа uint.
this.graphics.beginFill(convert,1); // И его можно использовать для вставки в методы beginFill и т.д.
this.graphics.drawRect(0,0,550,400);
this.graphics.endFill();
// В финале всё рисуется как надо.
// Вывод такой: в uint данные не хранятся в шестнадцатеричном виде - мы их туда ПЕРЕДАЁМ в таком виде,
// потому, что для нас удобнее цвет определять в 16 - ти разрядном формате. Они потом конвертируются
// автоматически в десятичный формат. У вас есть значение типа uint и метод beginFill в который нужно
// передать значение такого типа. Ну и передаём его, не обращая внимание на другую систему исчисления.
|