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

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

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

блогер
Регистрация: Feb 2011
Адрес: Россия, Тольятти
Сообщений: 301
Записей в блоге: 10
По умолчанию Работа с текстовым полем

Код AS1/AS2:
function initPanel(){
	Selection.setFocus(msg.text);
}
 
msg.onKeyDown = function():Void{
	if (Key.getCode() == 13) {
		msg.text = "";
	}
}
Функция initPanel должна устанавливать в поле msg.text фокус. Правильно?

А второй момент - это когда я что-то ввел в поле, я нажимаю Enter и поле должно очищаться. Правильно или нет?

Если нет, то прошу исправить. Заранее, спасибо!
__________________
Надо сменить подпись...

Старый 13.02.2012, 13:48
lexa2000lexa вне форума Посмотреть профиль Отправить личное сообщение для lexa2000lexa Найти все сообщения от lexa2000lexa
  № 2  
Ответить с цитированием
lexa2000lexa

Регистрация: Sep 2005
Сообщений: 950
А что вам мешает самому это проверить?
но вообще работать не будет, нужно изменить эту часть ващего кода
Код AS1/AS2:
var keyListener:Object = new Object();
keyListener.onKeyDown = function():Void{
	trace(Key.getCode())
	if (Key.getCode() == 13) {
		msg.text = "";
	}
}
Key.addListener(keyListener);


Последний раз редактировалось lexa2000lexa; 13.02.2012 в 13:53.
Старый 13.02.2012, 13:54
EndoCrinologist вне форума Посмотреть профиль Отправить личное сообщение для EndoCrinologist Найти все сообщения от EndoCrinologist
  № 3  
Ответить с цитированием
EndoCrinologist
 
Аватар для EndoCrinologist

блогер
Регистрация: Feb 2011
Адрес: Россия, Тольятти
Сообщений: 301
Записей в блоге: 10
Проверка говорит о том, что код не выполняется, хотя сама функция initPanel срабатывает (я в конец функци поставил msg.text = ""). А вот по поводу нажатия, попробую разобраться...

Добавлено через 2 минуты
Попробовал так. Создал кнопку butSend и поменял кодик на
Код AS1/AS2:
butSend.onKeyDown = function():Void{
	if (Key.getCode() == 13) {
		msg.text = "";
	}
}
Всё равно не помогло
__________________
Надо сменить подпись...


Последний раз редактировалось EndoCrinologist; 13.02.2012 в 13:59.
Старый 13.02.2012, 14:09
lexa2000lexa вне форума Посмотреть профиль Отправить личное сообщение для lexa2000lexa Найти все сообщения от lexa2000lexa
  № 4  
Ответить с цитированием
lexa2000lexa

Регистрация: Sep 2005
Сообщений: 950
А чем вас не устраивает, предложенный мой вариант?

Старый 13.02.2012, 14:13
EndoCrinologist вне форума Посмотреть профиль Отправить личное сообщение для EndoCrinologist Найти все сообщения от EndoCrinologist
  № 5  
Ответить с цитированием
EndoCrinologist
 
Аватар для EndoCrinologist

блогер
Регистрация: Feb 2011
Адрес: Россия, Тольятти
Сообщений: 301
Записей в блоге: 10
Даже нашел, как mooncar писал (http://www.flasher.ru/forum/showpost...&postcount=5):
Код AS1/AS2:
	var kl:Object = new Object();
	kl.onKeyDown = function():Void{
		if (Key.getCode() == 13) {
			msg = "";
		}
	}
	msg.onSetFocus = function(){
		Key.addListener(kl);
	}	
	msg.onKillFocus = function(){
		Key.removeListener(kl);
	}
Тоже не вышло....

Добавлено через 2 минуты
Ладно, забил, сделал вот так:
Код AS1/AS2:
on (keyPress "<Enter>") {
	msg = "";
}
Но как вот мне сразу фоку устанавливать?
__________________
Надо сменить подпись...

Старый 13.02.2012, 14:17
lexa2000lexa вне форума Посмотреть профиль Отправить личное сообщение для lexa2000lexa Найти все сообщения от lexa2000lexa
  № 6  
Ответить с цитированием
lexa2000lexa

Регистрация: Sep 2005
Сообщений: 950
А вы ставили галку "control>Disable Keyboard Shortcut" ?
Или заустипе swf отдельно а не во Flash ide.

Старый 13.02.2012, 14:19
EndoCrinologist вне форума Посмотреть профиль Отправить личное сообщение для EndoCrinologist Найти все сообщения от EndoCrinologist
  № 7  
Ответить с цитированием
EndoCrinologist
 
Аватар для EndoCrinologist

блогер
Регистрация: Feb 2011
Адрес: Россия, Тольятти
Сообщений: 301
Записей в блоге: 10
Цитата:
Сообщение от lexa2000lexa Посмотреть сообщение
А что вам мешает самому это проверить?
но вообще работать не будет, нужно изменить эту часть ващего кода
Код AS1/AS2:
var keyListener:Object = new Object();
keyListener.onKeyDown = function():Void{
	trace(Key.getCode())
	if (Key.getCode() == 13) {
		msg.text = "";
	}
}
Key.addListener(keyListener);
Работает, большое спасибо, осталось с фокусом разобраться... Почему он не ставит фокус в поле?
__________________
Надо сменить подпись...

Старый 13.02.2012, 14:47
lexa2000lexa вне форума Посмотреть профиль Отправить личное сообщение для lexa2000lexa Найти все сообщения от lexa2000lexa
  № 8  
Ответить с цитированием
lexa2000lexa

Регистрация: Sep 2005
Сообщений: 950
на самом деле фокус получает поле, а вот курсора нету , можно исправить вот так
Код AS1/AS2:
function initPanel(){
	Selection.setFocus(msg);
	Selection.setSelection( 0,0 );
}
если я конечно правильно понял вашу проблемму.

Старый 13.02.2012, 14:58
EndoCrinologist вне форума Посмотреть профиль Отправить личное сообщение для EndoCrinologist Найти все сообщения от EndoCrinologist
  № 9  
Ответить с цитированием
EndoCrinologist
 
Аватар для EndoCrinologist

блогер
Регистрация: Feb 2011
Адрес: Россия, Тольятти
Сообщений: 301
Записей в блоге: 10
Нет, не сработало.

Вот смотрите. Юзер нажимает на кнопку "ЧАТ", при этом происходит инициализация панели, которая должна установить фокус в поле, чтобы не щелкать туда мышкой, а сразу можно было вводить текст
__________________
Надо сменить подпись...

Старый 13.02.2012, 15:04
lexa2000lexa вне форума Посмотреть профиль Отправить личное сообщение для lexa2000lexa Найти все сообщения от lexa2000lexa
  № 10  
Ответить с цитированием
lexa2000lexa

Регистрация: Sep 2005
Сообщений: 950
вам вот так нужно
Вложения
Тип файла: zip Untitled-1.zip (3.4 Кб, 16 просмотров)

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

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

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


 


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


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