Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flasher.ru > Флейм

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 04.07.2002, 22:18
John Connor вне форума Посмотреть профиль Отправить личное сообщение для John Connor Посетить домашнюю страницу John Connor Найти все сообщения от John Connor
  № 1  
John Connor
 
Аватар для John Connor

Регистрация: Feb 2000
Адрес: +
Сообщений: 1,933
Отправить сообщение для John Connor с помощью ICQ
Question гадкое текстовое поле!

вот код:
Код:
for(j=0 ; j<_root.catalog[section].length ; j++){
		if(_root.catalog[section][j].quantity==0){
			continue;
		}
		name = "but" add i add "_" add j;
		search_result.createEmptyMovieClip(name,i*2000+j+20);
		obj = search_result[name];
		obj._x = 1;
		obj._y = k*17 + cur_y;
		obj.createRect(0,0,330,16,0x000000,0);
		obj.n = j;
		obj.section = section;

		// вот создается инпут-поле
		obj.createTextField("quan",i*2000+j+1620,331,-1,30,16);
		obj["quan"].type = "input";
		obj["quan"].restrict = "0-9";
		obj["quan"].text = _root.catalog[section][j].quantity;
		obj["quan"].setTextFormat(_root.formCatalogListi);
		obj["quan"].embedFonts = true;

		obj["quan"].onSetFocus = function(){
			tf = this.getTextFormat();
			tf.align = "left";
			this.setTextFormat(tf);
		}
		obj["quan"].onKillFocus = function(){
			tf = this.getTextFormat();
			tf.align = "right";
			this.setTextFormat(tf);
			_root.catalog[this._parent['section']][this._parent['n']].quantity = this.text;
		}

		k++;
	}
а вот и проблема:
кликаешь мышкой на поле.
в нем появляется курсор.
но вводить ничего нельзя (он никак не реагирует на нажатия)
а если нажать кнопочки влево и вправо (или просто влево, главное, чтобы курсор двинулся), то потом уже все вводится.
а если удалить все из поля, то уже ничего ввести нельзя и курсор в нем не отображается

что делать?
__________________
***


Последний раз редактировалось John Connor; 04.07.2002 в 22:20.
Старый 04.07.2002, 22:23
УильямБрэдберри вне форума Посмотреть профиль Отправить личное сообщение для УильямБрэдберри Посетить домашнюю страницу УильямБрэдберри Найти все сообщения от УильямБрэдберри
  № 2  
УильямБрэдберри
Мастер Цифрового Облика
 
Аватар для УильямБрэдберри

Регистрация: Apr 2000
Адрес: где-то там...
Сообщений: 4,510
Отправить сообщение для УильямБрэдберри с помощью AIM Отправить сообщение для УильямБрэдберри с помощью Yahoo
а вобще на чем тестишь?
ембед убирал?


Последний раз редактировалось УильямБрэдберри; 04.07.2002 в 22:25.
Старый 05.07.2002, 14:41
jeezekil вне форума Посмотреть профиль Отправить личное сообщение для jeezekil Найти все сообщения от jeezekil
  № 3  
jeezekil

Регистрация: Jun 2002
Адрес: Kiev
Сообщений: 3
Не рабтает он без ембеда.
этот слой обязательно должен быть под маской и без ембеда там просто ничего не отображается.

Старый 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.
Старый 05.07.2002, 17:36
jeezekil вне форума Посмотреть профиль Отправить личное сообщение для jeezekil Найти все сообщения от jeezekil
  № 5  
jeezekil

Регистрация: Jun 2002
Адрес: Kiev
Сообщений: 3
Привет, Ноктис!
на самом деле это у меня трабла, а не у Глюка
но твой трехрублевый метод все спас

у меня к тебе сразу встречный вопрос:
в этом самом текстовом поле при потере фокуса иногда остается немигающий курсор. не знаешь ли, как его побороть?

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

Регистрация: Aug 2001
Сообщений: 4,121
хм... не видел такого...
именно при потере фокуса ?
или при перемещении фокуса на какой-то другой объект ?

в принципе можно тем же способом похитрить (с помощью установки\снятия фокуса подряд)...
только надо понять в каких-таких случаях это происходит... чтобы зря не гонять курсор туда-сюда...


Последний раз редактировалось Nox Noctis; 05.07.2002 в 17:45.
Старый 05.07.2002, 17:47
Смольный (Smolniy) вне форума Посмотреть профиль Отправить личное сообщение для Смольный (Smolniy) Посетить домашнюю страницу Смольный (Smolniy) Найти все сообщения от Смольный (Smolniy)
  № 7  
Смольный (Smolniy)
Человек и Здание
 
Аватар для Смольный (Smolniy)

администратор
Регистрация: Aug 1999
Адрес: Москау-сити, Рассея
Сообщений: 4,671
Отправить сообщение для Смольный (Smolniy) с помощью ICQ
А если попробовать экстренно перерисовать кадр updateAfterEvent?
__________________
Регардсы.

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

Регистрация: Aug 2001
Сообщений: 4,121
дык надо знать на какой эвент апдейтить

мм... ну, можно в приципе на онКиллФокус... только у меня, например, вообще не получилось добиться застывания курсора, так что проверить это не получится может это вообще системный глючок...

Создать новую тему   Часовой пояс GMT +4, время: 15:16.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 15:16.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.