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

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

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

Регистрация: Oct 2012
Адрес: 59°57′ с. ш. 30°19′ в. д.
Сообщений: 49
По умолчанию Динамическое заполнение

Есть нарисованная клавиатура, каждая кнопка мувик внутри которого есть динамический текст,для того что вписать туда имя кнопки. Как лучше это сделать?
Сейчас это выглядит примерно так,но я хочу переделать,т.к. первое ругается компилятор,второе я знаю что это не правильно,хоть и работает.
Код AS3:
function NameBtn(mc:MovieClip,mc2:MovieClip,strEng:String,strRus:String){
mc.text=strEng
mc2.text=strRus
}
 
NameBtn(btn_z.txt,btn_z.txt2,"Z","Я")
Хотелось бы услышать советы по реализации,код не обязательно,только то как лучше сделать)именно идеи,как лучше и правильнее)

Старый 16.09.2014, 16:33
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 2  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Юля, для таких случаев придуман ХЕШ.
Вы создаете массив ( словарь ) или вектор раскладок. Приблизительно так :

Код AS3:
var rusArray:Object = {
1 : "a" ,
2 : "б",
...:"я"
}
Точно такой же словарик и для eng
Где цифра ID кнопки.
Далее вы можете пойти дальше и создавать XML локализации, где по ID которое описано выше, менять ЛЮБОЙ язык.

Далее создается метод запекания

Код AS3:
function flush() : void
{
    for(var i:* in rusArray) this["btn" + i].tf.text = rusArray[i] ,  this["btn" + i].tf1.text = engArray[i];
}
Писал на коленке, может быть где ошибка. Думаю смысл понятен
__________________
Марк Tween

Старый 16.09.2014, 18:29
nubideus вне форума Посмотреть профиль Отправить личное сообщение для nubideus Найти все сообщения от nubideus
  № 3  
Ответить с цитированием
nubideus

Регистрация: Jan 2013
Сообщений: 322
юля_программист, нужно сделать класс кнопки

Старый 16.09.2014, 19:53
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 4  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
юля_программист, нужно сделать класс кнопки
Совершенно необязательно как раз, тут достаточно обычного мувиклипа. В крайнем случае можно расширить в самой же IDE . Но это уже как раз опционально, вопрос стоял в другом
__________________
Марк Tween

Старый 22.09.2014, 16:46
юля_программист вне форума Посмотреть профиль Отправить личное сообщение для юля_программист Найти все сообщения от юля_программист
  № 5  
Ответить с цитированием
юля_программист
 
Аватар для юля_программист

Регистрация: Oct 2012
Адрес: 59°57′ с. ш. 30°19′ в. д.
Сообщений: 49
Цитата:
Сообщение от in4core Посмотреть сообщение
Далее создается метод запекания

Код AS3:
function flush() : void
{
    for(var i:* in rusArray) 
this["btn" + i].tf.text = rusArray[i] ,  
this["btn" + i].tf1.text = engArray[i];
}
Не могли бы Вы пояснить что значит :*, все понятно вот кроме одного,что такое звездочка и для чего)

Старый 22.09.2014, 16:50
Rzer вне форума Посмотреть профиль Отправить личное сообщение для Rzer Посетить домашнюю страницу Rzer Найти все сообщения от Rzer
  № 6  
Ответить с цитированием
Rzer
 
Аватар для Rzer

блогер
Регистрация: Feb 2007
Адрес: Spb
Сообщений: 613
Записей в блоге: 8
Отправить сообщение для Rzer с помощью ICQ
Я бы тоже сделал класс кнопки, и создавал клавиатуру программно.

Старый 22.09.2014, 16:58
Gerbert вне форума Посмотреть профиль Найти все сообщения от Gerbert
  № 7  
Ответить с цитированием
Gerbert
Banned
[+1 06.12.14]
[+1 18.12.14]
[+1 30.12.14]

Регистрация: Aug 2014
Сообщений: 461
Цитата:
Я бы тоже сделал класс кнопки, и создавал клавиатуру программно.
Это бы Вы сидели и высчитывали координаты для каждой кнопки, а их МНОГО..
Наверняка и масштаб бы Вы делали тоже программно для каждой кнопки. Потратили бы целый день..

А так взял нарисовал клаву, json накидал {имя_кнопки: текст}, а потом for in пробежал и все создано.

Цитата:
Не могли бы Вы пояснить что значит :*, все понятно вот кроме одного,что такое звездочка и для чего)
Это означает "все типы". Обычно var name:Type, а так var name:AllType

Старый 22.09.2014, 17:11
юля_программист вне форума Посмотреть профиль Отправить личное сообщение для юля_программист Найти все сообщения от юля_программист
  № 8  
Ответить с цитированием
юля_программист
 
Аватар для юля_программист

Регистрация: Oct 2012
Адрес: 59°57′ с. ш. 30°19′ в. д.
Сообщений: 49
Цитата:
Сообщение от in4core Посмотреть сообщение
Где цифра ID кнопки.
AS3 и массивы для новое)
Поэтому не могли бы Вы подсказать как мне задать это айди.
И главное как потом запустить функцию. Я предполагаю, что при старте приложения должно и заполнятся)

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

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Цитата:
Это бы Вы сидели и высчитывали координаты для каждой кнопки, а их МНОГО..
стартовые координаты + отступы.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 22.09.2014, 20:17
Gerbert вне форума Посмотреть профиль Найти все сообщения от Gerbert
  № 10  
Ответить с цитированием
Gerbert
Banned
[+1 06.12.14]
[+1 18.12.14]
[+1 30.12.14]

Регистрация: Aug 2014
Сообщений: 461
Цитата:
стартовые координаты + отступы.
Вот если бы все кнопки были одинаковы, то понятно, что стартовых координат и цикла достаточно,
но как Вы в цикле поймете... Хотя ширина кнопки... А как быть с теми, что высотой с две ширины?)

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

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

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


 


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


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