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

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

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

Регистрация: May 2009
Сообщений: 13
По умолчанию Подключение класса к проекту

каталог файлов проекта:
Код:
buttleNet
         |
         buttleNet.fla
         bnet
           |
           buttlenet.as
buttleNet - папка проекта
bnet - подкаталог папки проекта (пакет)
buttlenet.as - сласс пренадлежащий пакету bnet

код класса buttlenet.as
Код AS3:
package bnet{
	import fl.controls.Button;
 
	public class buttlenet {
 
		function buttlenet{
			var myButton:Button = new Button();
			myButton.label = "кнопка";
			myButton.emphasized = true;
			myButton.width = 150;
			myButton.move(20, 20);
			addChild(myButton);
			}
 
	}
}
в коде класса я использовал простое создание кнопки, просто чтобы увидить работу класса.

Вопрос:
Как мне подключить класс к проекту, и увидеть кнопку?

Старый 08.05.2009, 14:15
Venya2007 вне форума Посмотреть профиль Отправить личное сообщение для Venya2007 Найти все сообщения от Venya2007
  № 2  
Ответить с цитированием
Venya2007
[+4 16.07.08]

Регистрация: Jul 2008
Адрес: Gamburg
Сообщений: 108
import source.className.as

Старый 08.05.2009, 14:16
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 3  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Не увидите, у вас класс buttlenet (а классы пишут с Большой буквы) не расширяет ни один из визуальных объектов, поэтому его нельзя добавить на сцену и в нем нет метода addChild.
А вообще, после того как исправите ошибки выше, будет так
Код AS3:
import bnet.Buttlenet; //имя класса не забудьте подправить
addChild (new Buttlenet ())
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 08.05.2009, 14:31
_lucky_ вне форума Посмотреть профиль Отправить личное сообщение для _lucky_ Найти все сообщения от _lucky_
  № 4  
Ответить с цитированием
_lucky_

Регистрация: May 2009
Сообщений: 13
Ваши замечания исправил.
Компилятор выдает ошибку:
Цитата:
1172: Definition fl.controls:Button could not be found.
не видит иморта в файле класса Buttlenet :
Код AS3:
import fl.controls.Button;
Добавлено через 55 минут
Вообщим делаю так:
каталог файлов:
Код:
buttleNet
         |
         buttleNet.fla
         bnet
           |
           Buttlenet.as
класс Buttlenet.as
Код AS3:
package bnet{ 
		import flash.display.Sprite; 
		import flash.text.TextField; 
 
		public class Buttlenet extends Sprite { 
		public function Buttlenet() { 
			var field:TextField = new TextField(); 
			field.background = true;
			field.backgroundColor = 0xFF00FF;
			addChild(field); 
			trace("sss");
			} 
		} 
}
Код AS3:
import bnet.Buttlenet;
 
var fiel:Buttlenet = new Buttlenet();
если все закомментю, оставлю только трейс, то все работает. а TextField не создается - пусто, компилятор ошибок не выдают.
Почему не создается текстовое поле


Последний раз редактировалось _lucky_; 08.05.2009 в 15:37.
Старый 08.05.2009, 15:37
Gaen вне форума Посмотреть профиль Отправить личное сообщение для Gaen Найти все сообщения от Gaen
  № 5  
Ответить с цитированием
Gaen
strange mood
 
Аватар для Gaen

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
Скорее всего оно создаётся. Попробуйте задать для него какой-нибудь текст. Фона не будет видно, если не включить границу для поля (не помню точно как называется свойство).
__________________
тонкий тролль, осеянный благодатью

Старый 08.05.2009, 21:23
_lucky_ вне форума Посмотреть профиль Отправить личное сообщение для _lucky_ Найти все сообщения от _lucky_
  № 6  
Ответить с цитированием
_lucky_

Регистрация: May 2009
Сообщений: 13
Помогите разобраться. не пойму.
вот исходник класса:
Код AS3:
package pak{ 
	import fl.controls.Button;
 
	public class Buttons { 
 
	//private var _count:uint; 
	public function Buttons() { 
		var newButton:Button = new Button();
		newButton.label ="knopka";
		newButton.x = 30;
		newButton.y = 30;
		addChild(newButton);
	} 
 
	} 
}
Екземпляр класса создаю так:
Код AS3:
var btn:Buttons = new Buttons();
компилятор выдал ошибку:
Цитата:
1172: Definition fl.controls:Button could not be found.
5000: В класс "pak.Buttons" должен входить подкласс "flash.display.MovieClip", так как он связывается с символом такого же типа в библиотеке.
Почему fl.controls:Button не найдено??? и как понять ошибку 5000

Старый 08.05.2009, 21:29
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 7  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
Почему fl.controls:Button не найдено
Потому, что нету данного пакет. Ищите в сети.
Цитата:
и как понять ошибку 5000
Прочитайте первое предложение сообщение номер 3.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 08.05.2009, 22:02
_lucky_ вне форума Посмотреть профиль Отправить личное сообщение для _lucky_ Найти все сообщения от _lucky_
  № 8  
Ответить с цитированием
_lucky_

Регистрация: May 2009
Сообщений: 13
в хелпе посмотрел, там напротив класса Button написан пакет: fl.controls
По предложению сообщения 3 я понял так:
метода addChild в классе нет - это понятно. Названия класса с большой буквы тоже ясно.
Хочу чтобы получился хоть простейший класс. Использую только трейс
Переделал так:
Код AS3:
var btn:Buttons = new Buttons();
класс:
Код AS3:
package Pak{ 
 
	public class Buttons { 
 
	public function Buttons() { 
		trace("bbb");
	} 
 
	} 
}
получаю ошибки:
1180: Call to a possibly undefined method addFrameScript.
5000: В класс "Pak.Buttons" должен входить подкласс "flash.display.MovieClip", так как он связывается с символом такого же типа в библиотеке.

извините что задаю такие тупые вопросы, но не могу разобраться.

Старый 08.05.2009, 22:28
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 9  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
Ты связываешь класс с мувиклипом? С мувиклипом!
Логично, что твой класс должен содержать весь функционал мувиклипа.
Поэтому
Код AS3:
public class Buttons extends MovieClip{
И addFrameScript сразу заработает.

Старый 08.05.2009, 23:39
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 10  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
что-бы
Код:
import fl.controls.Button;
заработал надо нажать ctrl+F7 и перетянуть мышкой компонент кнопку в библиотеку (ctrl+l)

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

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

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


 


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


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