PDA

Просмотр полной версии : Как обработать IOErrorEvent у TextArea?


Pah
19.05.2009, 12:55
При присваивании некорректного html может возникнуть IOErrorEvent, допустим, если картинка не найдена. Как его отловить? Добавление обработчика к TextArea и к TextArea.loaderInfo ничего не дает.

etc
19.05.2009, 13:02
getImageReference

Pah
19.05.2009, 13:47
натыкался уже. то есть без mx_internal никак?

etc
19.05.2009, 13:57
А что, метод снаружи недоступен?

wvxvw
19.05.2009, 16:52
Без mx_internal - ну тогда либо не TextArea (там текстовое поле очень глубоко похоронено, просто так снаружи до него не доберешься). Либо, еще, как вариант, еще до заполнение поля текстом сделать валидацию всех URL'ов в нем.

etc
19.05.2009, 18:01
Ну попробуйте ловить ADDED.

Pah
20.05.2009, 01:18
Мне нужно как раз на этапе ошибки, чтобы подменять ненайденную картинку, на встроенную (embedded), я писал об этом в раздел по AS3, не знаю как иначе вставлять в htmlText встроенные картинки. В предыдущих версиях можно было, задавая в теге img src='<linkageID>'.

wvxvw
20.05.2009, 05:47
var xml:XML = <p>
<img src="images/float_head.jpg" width="100"/>
<IMG SRC="http://www.images.com/float_head.jpg"/>
</p>;
var re:RegExp = /(?<=src=")[^"]+(?=")/gi;
var htmlText:String = xml.toXMLString();
var srcs:Array = htmlText.match(re);
trace(srcs);
// images/float_head.jpg,http://www.images.com/float_head.jpg
// assume both are not valid
htmlText = htmlText.replace(new RegExp(srcs.join("|"), "gi"), "Symbol1");
var tf:TextField = new TextField();
tf.multiline = true;
tf.wordWrap = true;
tf.htmlText = htmlText;
tf.width = 200;
tf.height = 200;
addChild(tf);

Pah
20.05.2009, 19:31
ммм, и где же тут вставка embedded изображений?)