Autor Zpráva
pumpkin
Profil
prosím poradte mi.....dělám třídní web.mam tam dynamic text (v tom se zobrazuje obsah proměnné "narozky"), ve kterém bych chtěl aby se zobrazovalo kdo má daný měsíc narozeniny.myslel sem že by to šlo udělat takto

var narozky:String;
var dat = new Date();
var mesic = (dat.getMonth);
if (mesic == "0") {
narozky = "Franta, Michal";
} else if (mesic == "1") {
narozky = "Pepa, Honza";
}

......
jenže ono to nějak nefičí.prosím help me
FlashManiac
Profil *
No já osobně bych raději volil místo ELSE IF tohle: je to přehlednější:
var pokus:Date=new Date;

var narozky:String;
switch(pokus.getMonth()){
case 0: narozky = "Franta, Michal";
break;
case 1: //lidi v unoru
break;
.
.
.
case 11: //lidi v prosinci
break;
}

Nefunguje ti to proto, že máš druhou proměnnou, která je vlastně už zbytečná, protože proměnná třídy Date může v sobě obsahovat všechny jeho prvky, tedy i měsíc...
Tohle by mělo fungovat zkoušel jsem to
P.S. Pokud ale nemáš aspoň Flash MX tak ti nebude switch fungovat
pumpkin
Profil
diky
pumpkin
Profil
eště sem se chtěl zeptat, ten skript samozřejmě fičí....akorát když mi tu proměnnou zobrazí v tom Dynamic Textu, tak mi ten text divně formátuje, text na jednom řádku má jinou velikost než text na řádku druhém
...a ještě mám malý problém, ja bych potřeboval aby mi to každé jméno dal na nový řádek, prostě aby ta jména byla pod sebou, ne vedle sebe
FlashManiac
Profil
musíš si nastavit všude stejnou velikost textu :
tady je mamá ukázka kódu:
nejprve si musíš nastavit textový formát daného pole(velikost fontu, typ fontu, zarovnání atd. všechno je v nabídce, když napíšeš sufix)
var pokus:Date = new Date();

var format:TextFormat = new TextFormat();
format.size=20;
format.font="Arial";
var narozky:String;
var narozky2:String;
switch (pokus.getMonth()) {
case 0 :
narozky = "Franta, Michal";
break;
case 1 :
//lidi v unoru
break;
case 11 :
narozky = "Franta, Michal";
narozky2 = "Franta, Michal,Jana";
_root.createTextField("pole2_txt",0,100,100,60,60);
pole2_txt.text = narozky;
pole2_txt.selectable=false;
pole2_txt.autoSize=true;
_root.createTextField("pole3_txt",1,100,150,60,40);
pole3_txt.text = narozky2;
pole3_txt.selectable=false;
pole3_txt.autoSize=true;
pole3_txt.setTextFormat(format); /*tady priradis danemu textovemu poli nastaveny format(pole nejprve musi bzt vytvoreno,
esli ho naplnis ted nebo az pak je jedno,ale pokud budes ty pole dělat musís jim priradit
jinou hloubku(0,1,2,...), pole pak odstranis nazevPole.removeTextField()
ty dalsi parametry jsou x-ova a y-nova souradnice, pak sirka a vyska pole, ale pokud das
autosize=true,tak jsou nevyznamne, ted uz by melo byt vse OK*/
break;
}

pro ukázku jsem udělal jedno pole stak jak to vygeneruje Flash a druhe(spodni) je upravene. Tohle by ti snad mělo stačit k tomu abys to udělal podle svých představ...
pumpkin
Profil
no moc to nechapu....proč tvořit dvě textové pole???ja to chtěl jen zarovnat pod sebe....
Franta,
Pepa,
Michal,
....

takhle.....ja to zkoušel pomocí html...jako dát tam
<br>
...ale nevím jak mám u toho pole nastavit aby to bral jako html
Fenrir
Profil
Stačí dávat dotoho stringu \n

Takže

narozky = "Franta\nHonza\nPetr\natd......";

Ještě jedna věc dle mého názoru by bylo vhodnější natahovat ty narozky z nějakého externího textového souboru to zde již bylo na fóru děláno aby si nemusel pokaždé když někoho budeš chtít přidat tak kopilovat celej projekt.

Pokud to chceš dělat přes to <br> tak musíš nastavit tomu poli že může bejt definováno jako html je tam v propertis toho boxu tušímže znak <?..> nebo tak něco stačí na to kliknout a potom když dotoho pole něco zapisuješ tak místo pole.text = narozky; tak tam dát pole.textHtml = narozky; a samozřejmě tam bude místo toho \n <br> ale podle mne je zbytečné to dělat přes html když potřebuješ jen "odskok" na novou řádku.
pumpkin
Profil
diky moc
Hanz
Profil
Fenrir
Né textHtml, ale htmlText
Fenrir
Profil
Pardón... jak to píšu z hlavy tak to občas vypadne jak je to správně....
Toto téma je uzamčeno. Odpověď nelze zaslat.