Показать сообщение отдельно
Старый 01.08.2009, 12:59
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 7  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Я в восьмерке тестировал, поэтому и не получалось. Понятно теперь. Вымучал такой безумный код =) :
Код AS1/AS2:
// на сцене txt и mc
 
txt.onSetFocus = txt_onSetFocusHandler;
txt.onKillFocus = txt_onKillFocusHandler;
 
mc.onRelease = mc_onReleaseHandler;
 
var beginIndex:Number;
var endIndex:Number;
 
function txt_onSetFocusHandler(oldFocus:Object):Void
{
	onMouseUp = onMouseUpHandler;
}
 
function txt_onKillFocusHandler(newFocus:Object):Void
{
	delete onMouseUp;
}
 
function onMouseUpHandler():Void
{
	beginIndex = Selection.getBeginIndex();
	endIndex = Selection.getEndIndex();
}
 
 
function mc_onReleaseHandler():Void
{
	if (beginIndex == endIndex)
		return;
 
	var newString:String = "[" + txt.text.substring(beginIndex, endIndex) + "]";
	txt.replaceText(beginIndex, endIndex, newString);
 
	delete beginIndex;
	delete endIndex;
}