Показать сообщение отдельно
Старый 05.07.2002, 15:56
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 4  
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
привет Глук
помнишь была такая тема где чел спросил как мышкой нарисовать поле инпутное с ембедным шрифтом ?
я там в конце запостил код... и еще тогда заметил этот глюк: если не поставить курсор куда-нить внутрь строки, то с конца строки ничего нельза ввести но тогда мне было лениво разбираться как это исправить...
Код:
tst = "Jackdaws love my big sphynx of quartz...";
TFrefine = function (s, e) {
	tellTarget (this) {
		createTextField("TF", 1, s.x, s.y, e.x-s.x, e.y-s.y);
		TF.type = "input";
		TF.multiline = this.TF.wordWrap=this.TF.border=true;
		TF.variable = "_root.tst";
		// TF.text = "Jackdaws love my big sphynx of quartz...";
		// ---
		TFformat = TF.getTextFormat();
		TFformat.font = "FNT";
		TF.setTextFormat(TFformat);
		TF.embedFonts = true;
		// ---
	}
};
_root.onMouseDown = function() {
	this.createEmptyMovieClip("core", 1);
	core.strt = {x:_root._xmouse, y:_root._ymouse};
	core.onMouseMove = function() {
		var tmp = {x:_root._xmouse, y:_root._ymouse};
		var st = {x:Math.min(tmp.x, this.strt.x), y:Math.min(tmp.y, this.strt.y)};
		var en = {x:Math.max(tmp.x, this.strt.x), y:Math.max(tmp.y, this.strt.y)};
		TFrefine.apply(this, [st, en]);
	};
};
_root.onMouseUp = function() {
	delete core.onMouseMove;
	delete _root.onMouseDown;
	// ---------------------------------
	// вот так мы победили сырость :) 
	Selection.setFocus("tst");
	Selection.setSelection(tst.length, tst.length-1);
	Selection.setSelection(tst.length, tst.length);
	// ---------------------------------
	delete _root.onMouseUp;
};
копипастим -> в библиотеку любой шрифт -> ему линкейдж "FNT" -> запускаем, мышкой рисуем поле...

в функции _root.onMouseUp решение проблемы простое как три рубля


Последний раз редактировалось Nox Noctis; 05.07.2002 в 16:04.