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

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

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

Регистрация: Dec 2010
Адрес: Химки МО
Сообщений: 95
По умолчанию Помогите разобраться с кнопкой

Привет всем!
Мне нужна панель из пяти одинаково выглядящих нестандартного вида кнопок с разными текстами: "min", "2 x min", "3 x min", "pot", "all-in".

Так как я сугубый нуб в флеше, я сначала решил, что надо распотрошить стандартную кнопку компонент и привести ее к нужному виду. Я вставил кнопку на сцену и дважды кликнул на нее, и она "распалась" на ряд изображений ее отдельных фаз, но мне показалось сложным править их все, и потом я не знал как их собрать обратно, и что еще надо будет допилить, поэтому я пошел другим путем - путем создания кнопки с нуля. И столкнулся с проблемами. Прошу помочь.

Свою кнопку я сделал так:
Создал в Flash CS4 новый символ типа Button, создал изображения для up, down, over кадров. Проверил, что кнопка нажимается. Далее т.к. мне нужна была панель из одинаково выглядящих кнопок, но с разными надписями, я создал новый символ типа MovieClip - панель кнопок и разместил на ней пять моих одинаковых кнопок.

Но надписи на кнопках должны быть разными! Пробовал менять надписи на кнопках, но сделать это получилось только редактированием символа, а при этом надписи менялись синхронно на всех 5 кнопках на панели. Я обломался делать пять похожих символов и решил изменить текст экземпляров каждой кнопки-символа на панели из конструктора класса, наследующего от класса панели.

Я указал имена экземпляров для кнопок, для панели кнопок, и для динамик текстов на кнопках.

Тут столкнулся с проблемами.
1) поскольку кнопка в кадрах up и down имеет различное положение (утапливается), то и текст на кнопке тоже должен утапливаться. Значит надо делать несколько Dynamic Text объектов сообразно кол-ву кадров? Правильно рассуждаю или надо как-то по-другому?
2) Если да, то значить им надо давать уникальные имена (Instance name), получается как-то избыточно что-ли.
3) Несмотря на то, что переменные, которые автоматом создаются если назначишь объекту Instance name, выбирались из списка автоподстановки после нажатия "." значение переменной title (динамик текст на кнопке) оказалось null. Почему?
Вот мой код в конструкторе лейаута флешки:

Код AS3:
// Поменять текст на кнопках рейз панели
var p:RaisePanelButtonGroupDesign = this.layoutDesign.blockLower.raisePanel.raisePanelButtonGroup
var btn_array:Array = [p.btn1, p.btn2, p.btn3, p.btn4, p.btn5]; // btn1-5 автоподстанавливаются имена экз. кнопок
var btn_names:Array = ["min", "2 x min", "3 x min", "pot", "all-in"];
for (var i:int = 0;  i < btn_array.length; i++) {
  //RaisePanelButtonDesign (btn_array[i]).title.text = btn_names[i]; // вылетает, т.к. title == null
  trace(RaisePanelButtonDesign (btn_array[i]).title); // почему выводит null???
}
ps
Dynamic Text с именем экземпляра title я создал для проверки идеи только на кадре up, может в этом дело?


Последний раз редактировалось zhoran; 27.12.2010 в 22:49.
Создать новую тему   Часовой пояс GMT +4, время: 23:36.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
button

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

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


 


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


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