Aide pour un calendrier

vaalba Messages postés 37 Date d'inscription dimanche 18 juillet 2004 Statut Membre Dernière intervention 18 octobre 2005 - 22 sept. 2005 à 09:22
slagt Messages postés 232 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 29 mars 2011 - 24 sept. 2005 à 14:52
Bonj
Je ne connais pas grand chose en script flash et je ne trouve pas de tutoriaux vu que j'ai en plus flash 5. Je cherche un gentil garcon (lol) qui pourrais me creer un calendrier du mois (a mettre dans une cellule (150x150 pix). Je voudrais juste que le mois et les jours de la semaine se changent automatiquement.
Merci beaucoup (par contre j'ai juste flash 5)
desole pour les fautes je suis italien

vaalba

13 réponses

_benjy Messages postés 1575 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 21 février 2011 2
22 sept. 2005 à 17:38
Salut

passe a flash mx 2004 ou flash 8 car tu vas avoir du mal a trouver quelqu'un qui tourne encore ss flash 5

++

Flash sans Limites
_Benjy chez kOlapsis

merci de penser a accepter
0
vaalba Messages postés 37 Date d'inscription dimanche 18 juillet 2004 Statut Membre Dernière intervention 18 octobre 2005
22 sept. 2005 à 20:58
Bonj
je ne pouvais pas passer en flash mx parce que j'avais windows me (il n'est pas compatible avec flash mx). La semaine prochaine je vais pouvoir le faire.
Merci pour le conseil.

vaalba
0
slagt Messages postés 232 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 29 mars 2011
22 sept. 2005 à 23:00
Voilà !



Exporté en Flash 5 ça fonctionne, donc je suppose qu'il ne devrait pas y avoir de problème !

À noter qu'il faut que tu créer un clip avec pour nom de liaison : "case", et dedans (exemple) :

Sur la première frame : un carré de 20*20, bordure filet : #CCCCCC, fond : #FFFFFF (_x:0, _y:0)

Sur la deuxième frame : un carré de 20*20, bordure filet : #CCCCCC, fond : #F5F5F5 (_x:0, _y:0)

Sur la troisième frame : un carré de 20*20, bordure filet : #333333, fond : #FF0000 (_x:0, _y:0)



Sur un autre calque, une frame qui s'étend sur les 3 frames de ton clips :

Un champs de texte :

Police : "Helvetica"

Taille : 12

Couleur : #000000

Var : txt

_x : 0

_y : 3.1

_width : 20

_height : 16.3



Alors ne créer pas tout ça dynamiquement, fait le manuellement. Pour le
champs de texte, pour avoir la largeur et la hauteur qu'il faut tu
devras zommer à 2000% et bouger un tout petit peu la taille pour
obtenir la bonne. Si tu change directement dans "Propriétés" ça va
agrandir la largeur/hauteur de ton texte.



// DEBUT DU CODE //



var Dates = new Date(); // On créer un objet Dates

jS Dates.getDay(); // On récupère le jour de la Semaine (auj. Jeudi 4)

jM = Dates.getDate(); // Et le jour du Mois (auj. le 22)



jour = jS - 1; // Ce bout de code va récupérer le premier jour du mois

for (var i=0; i<jM; i++) // On raisonne comme le ferais un humain lambda !

{

if (jour == 0) // Si on arrive au Lundi, on recommence au Dimanche (pas exactement mais le résultat est là)

jour = 7;

// 7 est en réalité le jour juste après Dimanche s'il y en avait un...



jour --;

// On enlève 1. Donc si on a 7, on retrouve 6, qui est... Dimanche !

// Pour ce mois-ci, ça donnera Jeudi (3)

}



mois = Dates.getMonth(); // On chope le mois (auj. le 8 (ça commence à 0) pour Septembre)



annee = Dates.getYear(); // Récupère le nombre d'année passé depuis 1900



// Le bout suivant définit le tableau des mois
(durée des jours) de différente façon si on est en année bisextile ou
non. Comme 1900 est divisible par 4, on a pas besoin d'ajouter à
"annee" la valeur de 1900 //



if (annee%4==0)

{

tMois = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; // 29 jours pour Février

}

else

{

tMois = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; // 28 jours pour Février

}



n = 0; // Ca c'est le nombre qui sera écrit dans les cases.



tJour = ["L", "Ma", "Me", "J", "V", "S", "D"]; // Les abréviations à mettre sur la première ligne



// On aura besoin de 49 cases. 7 pour les
initiales des jours, et 42 pour les chiffres. Si jamais le mois
commence un Dimanche, et qu'il y a 31 ou 30 jours, alors on aura besoin
de la dernière ligne. //



for (var i=0; i<49; i++)

{

this.attachMovie ("case", "case" + i, i); // On attache la case

this["case"+i]._x = (i%7) * this["case"+i]._width + (150 - 7*20)/2; // Position sur X en fonction de la largeur

this["case"+i]._y = Math.floor(i/7) * this["case"+i]._height + (150 - 7*20)/2; // Position sur Y en fonction de la hauteur

this["case"+i].stop(); // On arrête les cases sur la première frame



if (i < 7) // Si on est sur la première ligne

{

this["case"+i].txt = tJour[i];

}

else if (i >= 7 && i <= 7+jour) // Si on est sur les premiers jours de la semaine qui appartiennent au mois d'avant

{

this["case"+i].txt = "";

}

else

{

if (n > tMois[mois]) // Si n est plus grand que le nombre de jour

{

this["case"+i].txt = ""; // On affiche plus rien

}

else

{

this["case"+i].txt = ++n; // Sinon on incrémente n de 1 et on l'affiche dans la case



if (n
< jM)
// Si n est plus petit que le jour du mois actuel

this["case"+i].gotoAndStop (2);

else if (n jM) // Si n aujourd'hui

this["case"+i].gotoAndStop (3);

}

}

}





// Cette partie te donne juste dans une variable dateComplete, la date complète sous la forme : Jeudi 22 Septembre //



tcJour = ["Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi", "Dimanche"];

tcMois = ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"];



if (jM < 10)

jM = "0" + jM;



dateComplete = tcJour[jS] + " " + jM + " " + tcMois[mois];



// FIN DU CODE //



Tout devrais rouler sans problème avec ça :)
0
vaalba Messages postés 37 Date d'inscription dimanche 18 juillet 2004 Statut Membre Dernière intervention 18 octobre 2005
23 sept. 2005 à 08:28
Bonj
merci beaucoup, mais le probleme c'est que je ne comprends pas grands chose lol (je ne suis pas aussi competent que toi lol).
Tu porrais m'envoyer le fichier fla ? pour voir a quoi ca rassemble tout ca.
merci
vaalba
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
vaalba Messages postés 37 Date d'inscription dimanche 18 juillet 2004 Statut Membre Dernière intervention 18 octobre 2005
23 sept. 2005 à 09:18
Voila j'ai quands meme essaye. Mais il ya beaucoup de chose que je ne comprends pas, deja ou mettre le code, faire le champs de texte etc. Alors je pense que il faut que je regarde ta fla. Je t'envoye un message avec mon adresse e-mail.
Merci

vaalba
0
slagt Messages postés 232 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 29 mars 2011
23 sept. 2005 à 11:27
Le code il faut le mettre sur la première image de ton anime.



Ensuite tu créer un clip.

La disposition des dessins dans ce clip doit être comme ça :





"Demain et sans texte" c'est toutes les cases qui suivent le jour d'aujourd'hui ET les cases où il n'y a pas de texte

"Hier" c'est les cases correspondant aux jours d'avant aujourd'hui

"Aujourd'hui" c'est la case telle qu'elle sera le jour même

"Texte" c'est juste un truc pour te montrer la taille qu'il fera (enfin je t'ai donné position sur X, Y, largeur et hauteur)



Enfin, tu peux voir que "Texte" est sur un calque "Texte" et qu'il se
répand sur les 3 premières frame (on est toujours dans le clip Case là
!).



Pour la liaison je t'ai dis par MP comment faire.
0
vaalba Messages postés 37 Date d'inscription dimanche 18 juillet 2004 Statut Membre Dernière intervention 18 octobre 2005
23 sept. 2005 à 16:00
Je vais essayé mais je ne te cache pas que je vois pas lol, j'ai du mal en tout ca.
Mais dans l'animation je dois quands meme creer un calandrier avec le mois et les jours?


Desole si je te fait perdre du temps mais je debute et j'ai un peu de mal.
Tu a le fichier fla pour que je decompose tout ca?


Merci

vaalba
0
slagt Messages postés 232 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 29 mars 2011
23 sept. 2005 à 18:38
Non je n'ai pas de fichier fla, je ne suis pas sûr que tu puisse l'ouvrir.


En fait, tu n'as besoin de rien faire (excepté créer le clip que je t'ai dis) !

Le code va se charger de tout !



Il va prendre les cases, les mettres aux bons endroits. Mettre un L,
Ma, Me, J, V, S et D sur la première ligne. Mettre les chiffres où il
faut. Mettre la case en rouge pour le jour d'aujourd'hui... etc...
Bref! La seule chose que tu dois faire, c'est créer le clip avec les
carrés et le champs de texte dedans comme je t'ai dis, de le lié en
tant que "case", et enfin coller le code que je t'ai donné directement
sur la première frame !



Tout se fait automatiquement après :)


^^
0
on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010
23 sept. 2005 à 19:01
..hum.. s'cuses-moi de mettre mon grain de sel mais "case" est un nom résérvé...

A+.

(sinon c'est un super tuto).
0
vaalba Messages postés 37 Date d'inscription dimanche 18 juillet 2004 Statut Membre Dernière intervention 18 octobre 2005
24 sept. 2005 à 08:47
Bonj
Voila quands je veux par contre coller le code, (j'ouvre le panneau action et je fait coller) j'ai une boite grise qui me dit que le code ne peux pas etre coller perce que il ya des erreurs. Peut etre c'est parce que j'ai flash 5, je vais essaye avec mx la semaine prochaine.
Merci encore
vaalba
0
vaalba Messages postés 37 Date d'inscription dimanche 18 juillet 2004 Statut Membre Dernière intervention 18 octobre 2005
24 sept. 2005 à 09:43
J'ai essayé de copier le code ligne par ligne, j'arrive à coller jusqu'a :
// Le bout suivant définit le tableau des mois (durée des jours) de différente façon si on est en année bisextile ou non. Comme 1900 est divisible par 4, on a pas besoin d'ajouter à "annee" la valeur de 1900 //
quands je colle la ligne suivante if.(annee..... j'ai la boite grise qui me dit que le code ne peux pas etre coller normalment parce que il ya des erreurs.
Merci

vaalba
0
on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010
24 sept. 2005 à 12:14
... d'ailleurs macromedia dit ceci à son sujet:

"L'action case utilisée en dehors d'une instruction switch produit une erreur et la compilation du script échouera si elle est utilisée comme telle."

pour vérifier les mots actuellement réservé:

http://wiki.media-box.net/tutoriaux/flash/mots_reserves



pi Vaabla si t'as vraiment un . après le if c'est sûr que ça ne va pas marcher.



A++
0
slagt Messages postés 232 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 29 mars 2011
24 sept. 2005 à 14:52
Ah, mince, j'avais complètement oublié le "case".



Enfin, d'un autre côté, le seul moment où j'utilise case c'est dans
l'attachMovie... ça ne me pose pas de problème sur mon MX2004...

Enfin, remplace "case" par "cases" et pis voilà ;) (oublie pas de changer le nom de liaison).



Et comme dit on_drag_on, s'il y a vraiment un "." après le "if", supprime le !

^^
0
Rejoignez-nous