|
|
|||||
Регистрация: 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. Почему? Вот мой код в конструкторе лейаута флешки: // Поменять текст на кнопках рейз панели 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??? } Dynamic Text с именем экземпляра title я создал для проверки идеи только на кадре up, может в этом дело? Последний раз редактировалось zhoran; 27.12.2010 в 22:49. |
Часовой пояс GMT +4, время: 19:26. |
|
« Предыдущая тема | Следующая тема » |
Теги |
button |
|
|