[Resolvido] criando um calendario
Eai pessoal.. beleza??
tipo.. to criano um aplicativo que vai ter eventos e tal.. pra isso to fazendo esse calendario..
e to recebendo um erro '1061: Call to a possibly undefined method addChild through a reference with static type funcoes:calendario.'
e ele me fala que o erro ta na linha destacada no codigo abaixo..
montei isso aqui até agora.. (to andando devagar.. pq não saco quase nada de as3)..
//Classe para criação de calendário
package funcoes{
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.Event;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;
import flash.text.Font;
import flash.events.MouseEvent;
public class calendario{
var meses:Array = new Array("Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro");
var diasSemana:Array = new Array("Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado");
var diasSemanaAb:Array = new Array("D", "S", "T", "Q", "Q", "S", "S");
var diasMes:Array = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var diasComEvento:Array;
var dataAtual:Date;
var txtData:String;
var mesSelecionado:Date;
var diasUsados:Number;
var i:uint;
var dia_mc:MovieClip;
var dias_mc:MovieClip = new MovieClip;
var holder:MovieClip = new MovieClip;
var calendario_mc:MovieClip = new MovieClip;
//Montanto o calendário
public function calendario():void{
diasUsados = (mesSelecionado.getFullYear()%4 == 0 && mesSelecionado.getMonth() == 1 ? 29 : diasMes[mesSelecionado.getMonth()]); //montando quantos dias posso usar no mes
this.addChild(calendario_mc); ///////////// LINHA DO ERRO!!! //////////////
montaDias();
}
//---------------------
//Montando os dias
public function montaDias():void{
for (i = 1; i < diasUsados+1; i++) {
dia_mc = new MovieClip();
dia_mc.name = "dia"+i;
dias_mc.addChild(dia_mc);
dia_mc.x = i*25;
dia_mc.y = 5;
escreveDia();
trace('montaDias');
}
calendario_mc.addChild(dias_mc);
//----------------
}
//Escrevendo o Dia
public function escreveDia():void{
txtData = pegaNomeDia(mesSelecionado.getFullYear(), mesSelecionado.getMonth(), i);
holder = new MovieClip();
holder.name = i.toString();
dia_mc.addChild(holder);
var label_txt:TextField = new TextField();
label_txt.name = txtData+"_txt";
label_txt.autoSize = TextFieldAutoSize.RIGHT;
label_txt.embedFonts = true;
label_txt.text = txtData;
label_txt.selectable = false;
label_txt.mouseEnabled = true;
var day_tf = new TextFormat();
day_tf.font = "Arial Black";
day_tf.color = 0xFFFFFF;
day_tf.size = 13;
label_txt.setTextFormat(day_tf);
holder.addChild(label_txt);
trace('escreveDia');
}
//-------------------------------
//Função para pegar o nome do dia
public function pegaNomeDia(ano:Number,mes:Number,dia:Number):String{
return (diasSemanaAb[new Date(ano, mes, dia).getDay()]);
}
//-------------------------------
}
}e tento usa-la assim:
var c:calendario = new calendario();
não sei se minha ideia ta certa.. mas o objetivo éra fazer a classe criar um MC.. e nele serem criados os dias do mes.. cada um como um MC novo.. e masi pra frente ter as suas respectivas funções..
Discussão (4)
Carregando comentários...