PDA

Просмотр полной версии : Помогите с созданием кнопки


Михаил Свинцов
26.02.2012, 19:23
я создаю приложение(для проекта) где оч много кнопок, я и решил создать класс(CreateButton) объекты которого будут представлять текст-кнопку.
Все экземпляры CreateButton будут создаваться в классе(Glavan, где n число от 0 до 13) унаследованном от основного(extends MovieClip).

package p {
import flash.display.*;
import flash.net.*;
import flash.events.*;
import flash.text.*;

public class Application extends MovieClip {
public function Application() {
var glav0 = new Glava0();
trace("Конструктор основного класса Application");
}
}
}
Вот это класс Glava1, в котором пока что я создаю одну кнопку(btn)


package p {
public class Glava0 extends Application {
private var btn;
public function Glava0() {
btn = new CreateButton("Главная", 20, 0x0000FF, 100, 100);
trace("Класс, объектами которого являются кнопки - CreateButton");
}
}
}
А вот это сам класс CreateButton

package p {
import flash.display.*;
import flash.net.*;
import flash.events.*;
import flash.text.*;

public class CreateButton extends Sprite {
private var txt:TextField = new TextField();
private var format:TextFormat;

public function CreateButton(ptext:String, size:uint, color:Object, xpos:uint, ypos:uint) {
txt.text = ptext;
txt.x = xpos;
txt.y = ypos;
format = new TextFormat();
format.size = size;
format.color = color;
format.font = "Segoe Print";
txt.defaultTextFormat = format;
addChild(txt);
txt.mouseEnabled = true;
txt.addEventListener("click", clickListener);
}

private function clickListener(e:MouseEvent):void {
trace("Кнопка нажата");
}
}
}

Inet_PC
26.02.2012, 19:38
А в чем собственно проблема то?

Михаил Свинцов
26.02.2012, 19:41
кнопку не видно при компиляции

Alex Lexcuk
26.02.2012, 19:42
>>Помогите с созданием кнопки
Помогаю тутором (там много кнопок)
http://www.murmadillo.tut.su/html/menu-SimpleButton-href.html

Когда отвечал, не было про то что кнопку не видно. Надо

addChild(btn);

Михаил Свинцов
26.02.2012, 19:43
да и мне кажется что даже до конструктора Glava0 не доходит, видно тогда бы было в аутпате "Класс, объектами которого являются кнопки - CreateButton"

Добавлено через 2 минуты
и можно мне не отправлять ссылки а указать ошибки

Добавлено через 5 минут
и это в конструктор Glava0 насколько я понимаю???

Alex Lexcuk
26.02.2012, 19:50
Может идёт рекурсия, тк. Glava от Aplication, а в нём создаётся Glava и FP виснет.

Михаил Свинцов
26.02.2012, 19:50
все равно не отображается

Добавлено через 32 секунды
а если рекурсия то что и как исправить

Добавлено через 1 минуту
[QUOTE=Михаил Свинцов;1065661]да и мне кажется что даже до конструктора Glava0 не доходит, видно тогда бы было в аутпате "Класс, объектами которого являются кнопки - CreateButton"

в любом случае конструктор glava0 не выполняется

Добавлено через 3 минуты
я попробовал Glava0 extends Sprite и extends MovieClip все равно ничего не получается

Alex Lexcuk
26.02.2012, 19:56
class Glava0 extends Application

С атомной бомбы по воробьям

class Glava0 extends Sprite

Михаил Свинцов
26.02.2012, 19:57
можно попонятней

Добавлено через 55 секунд
япришел сюда за ответом а не за тем чтобы оскорбляли меня за то что я новичок

Inet_PC
26.02.2012, 20:04
Вас никто не оскорблял. Замените class Glava0 extends Application на class Glava0 extends Sprite и в Application добавить после создания главы:
addChild(glav0); И в главу :
addChild(btn);

Михаил Свинцов
26.02.2012, 20:08
все сделал как вы сказали и ничего не нарисовалось

Добавлено через 40 секунд
p.s. не написалось

Alex Lexcuk
26.02.2012, 20:10
Новички так не пишут. Новички пишут как в туторе (тк. читают туторы).
Походу надо тестить пробовать, раз не доходит до
>>аутпате "Класс, объектами которого являются кнопки - CreateButton"
Значит надо

package p {
public class Glava0 extends Sprite {//если extends Aplication то будет рекурсия тк. в нём new Glava0
private var btn;
public function Glava0() {
//btn = new CreateButton("Главная", 20, 0x0000FF, 100, 100);
trace("Класс, объектами которого являются кнопки - CreateButton");
}
}
}

Inet_PC
26.02.2012, 20:14
Не знаю, у меня работает. Выложите проект, что-ли.

Михаил Свинцов
26.02.2012, 20:28
может флеш глюканул

Добавлено через 2 минуты
стыдно уже просить но можете тогда написать полностью эти классы я скопирую прямо туда и все

Inet_PC
26.02.2012, 20:34
Это вряд ли Вам поможет понять, что у Вас не работает. И завтра же, Вы придете на форум с аналогичной проблемой.

Михаил Свинцов
26.02.2012, 20:39
поможет потому что я его хоть и вставлю просто но еще и пойму что не дописал, я у мука вторую часть еще только только вчитываюсь и вот эту всю фигню с отображением не понимаю а текст и форматирование еще через 8 глав, но я перешел с AS1 и поэтому с текстом работал, а вот отображение для меня пока что непроходимая чаща

Добавлено через 30 секунд
нупиши пожалуста

Добавлено через 5 минут
заранее благодарю

Добавлено через 1 час 46 минут
как заменить курсор на руку в кнопке-тексте