Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Flash: 1 bouton ds un clip de zoom (AS)

  celine34, le mardi 24 juin 2008 à 16:01:34
Bonjour à tous,

J'ai conçu une carte sous AI que j'ai importée dans flash pour pouvoir la rendre dynamique, à savoir créer un effet de zoom sur celle-ci, grâce à des boutons "+", "-" et une remise à zéro avec un bouton "reset". Je suis arrivée à réaliser mon effet grâce au très bon tuto d'olivier (http://wiki.mediabox.fr/tutoriaux/fl..._fenetre_zooms).
Cependant, je ne viendrai pas vous ennuyer avec mes exploits si je n'avais pas une question:
mon effet de zoom fonctionne bien et j'aimerais maintenant pouvoir créer à l'intérieur de mon clip zoom de ma carte des boutons sur certains sites touristiques, pour pouvoir, lorsque l'on clique dessus ou au passage de la souris (cela a peu d'importance), pouvoir afficher un cadre de couleur contenant une petite description du lieu avec éventuellement une ou deux photos pour illustrer. Je souhaite que ces boutons soient accessibles du moment où la personne zoome sur une partie de la carte, elle clique/passe sa souris sur un lieu et le petit cadre de couleur contenant le texte et les images s'affiche au-dessus de la carte.
J'ai déjà essayé de transformer un lieu en bouton en rentrant dans mon clip carte, mais celui-ci n'est pas réactif au passage de la souris.
Auriez-vous une solution à me proposer?
Merci par avance à tous ceux qui pourront m'aider! ;)

Voici le code AS Zoom:

import flash.geom.Rectangle;
import flash.geom.Point;

// Changer éventuellement ces coordonnées aux dimensions désirées de votre fenêtre d'affichage :
var zoneAffichage:Rectangle = new Rectangle(50,50,474,650);

// Dessin d'un rectangle délimitant la fenêtre
var fenetreMC:MovieClip = this.createEmptyMovieClip("fenetre", this.getNextHighestDepth());
fenetreMC.lineStyle(5, 0x999999, 100)
fenetreMC.moveTo(zoneAffichage.left, zoneAffichage.bottom);
fenetreMC.lineTo(zoneAffichage.left, zoneAffichage.top);
fenetreMC.lineTo(zoneAffichage.right, zoneAffichage.top);
fenetreMC.lineStyle(5, 0x999999, 100)
fenetreMC.lineTo(zoneAffichage.right, zoneAffichage.bottom);
fenetreMC.lineTo(zoneAffichage.left, zoneAffichage.bottom);

var maskMC:MovieClip = this.createEmptyMovieClip("mask", this.getNextHighestDepth());
maskMC.beginFill(0xffffff, 100)
maskMC.moveTo(zoneAffichage.left, zoneAffichage.top);
maskMC.lineTo(zoneAffichage.right, zoneAffichage.top);
maskMC.lineTo(zoneAffichage.right, zoneAffichage.bottom);
maskMC.lineTo(zoneAffichage.left, zoneAffichage.bottom);
maskMC.endFill();
carte.setMask(maskMC);

carte.onPress = function () { this.startDrag(false); }
carte.onRelease = carte.onReleaseOutside = function () { this.stopDrag(); }

function redimensionnerProportionnellement(contenuMC:MovieClip, conteneurRect:Rectangle) {
// Dimensionne contenuMC à sa taille maximale pour qu´il rentre dans conteneurRect.

contenuMC._width = conteneurRect.width; // on met la largeur maximale.
contenuMC._yscale = contenuMC._xscale; // on fait suivre le redimensionnement vertical pour éviter la déformation.
if (contenuMC._height > conteneurRect.height) {
// Si le contenu dépasse en hauteur, on rectifie et on adapte la largeur :
contenuMC._height = conteneurRect.height;
contenuMC._xscale = contenuMC._yscale;
}
}

function centrer(contenuMC:MovieClip, conteneurRect:Rectangle) {
// Centre contenuMC dans conteneurRect.

// On calcule les coordonnées du point central de conteneurRect :
var centreX:Number = conteneurRect.width / 2 + conteneurRect.left;
var centreY:Number = conteneurRect.height / 2 + conteneurRect.top;
// On place contenuMC en fonction de ce point, en tenant compte de sa taille :
contenuMC._x = centreX - contenuMC._width / 2;
contenuMC._y = centreY - contenuMC._height / 2;
}

reset.onPress = function () {
redimensionnerProportionnellement(carte, zoneAffichage);
centrer(carte, zoneAffichage);
}
function placerPoint(carte:MovieClip, cible:Point, dest:Point):Void {
// Place le point cible de carte sur le point dest
carte._x = dest.x - cible.x * carte._xscale / 100;
carte._y = dest.y - cible.y * carte._yscale / 100;
}

function zoomerSurCentre(carte:MovieClip, zoneAffichage:Rectangle, scale:Number):Void {
// Modifie l'échelle de carte en le déplaçant de manière à garder
// immobile le point qui est au centre de zoneAffichage

// Calcul des coordonnées du point central de zoneAffichage :
var centreRectX:Number = zoneAffichage.left + zoneAffichage.width / 2;
var centreRectY:Number = zoneAffichage.top + zoneAffichage.height / 2;
var centreRect:Point = new Point(centreRectX, centreRectY);
// Calcul des coordonnées du point de carte qui occupe
// actuellement le centre de la zone d'affichage
var centreImage:Point = centreRect.clone();
carte.globalToLocal(centreImage);
// Opération de zoom :
carte._xscale = scale;
carte._yscale = scale;
// Placement de l'image :
placerPoint(carte, centreImage, centreRect)
}

btplus.onPress = function () {
zoomerSurCentre(carte, zoneAffichage, carte._xscale * 1.5)
}
btmoins.onPress = function () {
zoomerSurCentre(carte, zoneAffichage, carte._xscale / 1.5)
}

reset.onPress() // Ajuster l'image au lancement du swf
Configuration: Mac OS X
Firefox 2.0.0.14
Répondre à celine34  Signaler ce message aux modérateurs

Résultats pour Flash: 1 bouton ds un clip de zoom (AS)

Ajouter nvx boutons ds un kit graphique (Résolu) bonjour, je suis en train de créer un site internet avec nvu, et j'ai qq pbs.. j'ai trouvé mes boutons tout faits parce que j'ai téléchargé un kit graphique, ms en plus j'arrive pas à rajouter de nouveaux boutons ds le meme style... www.commentcamarche.net/forum/affich-4297736-ajouter-nvx-boutons-ds-un-kit-graphique
Sony HDR-SR10 SR 10,Zoom optique 15x,Zoom numérique 30x,480 grammes,2.7 pouces LCD,Stéréo,Disque dur,Capacité du disque dur:40.0 GB,Télécommande,USB,Entrée Audio,HDMI Connection:No,Type de batterie:InfoLithium,Flash/lumière vidéo intégré,Zoom numérique:30... www.commentcamarche.net/guide-achat/sony-hdr-sr10-1059145-fiche-technique
[flash] bouton animé (Résolu) Bonsoir a tous, ca fait deux jours je galère sur ce bouton que j'essaie de faire... pour le principe du bouton : http://marmottemanu.free.fr/share/bouton_flash.jpg . j'arrive a créer un bouton simple, avec ses différents états (normal,... www.commentcamarche.net/forum/affich-2831631-flash-bouton-anime

Résultats pour Flash: 1 bouton ds un clip de zoom (AS)

Nintendo DS, Homebrews et programmationNintendo DS et Homebrews Tout le monde connait la dernière console portable de Nintendo, jusque là, pas de surprise. Mais connaissez-vous toutes les possibilités qu'offre, avec les outils adéquats, cette console... www.commentcamarche.net/faq/sujet-8160-nintendo-ds-homebrews-et-programmation
[Webmaster] Afficher une image de grande taillePour la plupart des internautes, afficher une image de grande taille dans une page web est trop lourd. Zoomify est un petit programme Flash qui permet de rendre une image zoomable et navigable, et chargeant l'image par morceau selon le... www.commentcamarche.net/faq/sujet-2955-webmaster-afficher-une-image-de-grande-taille

Résultats pour Flash: 1 bouton ds un clip de zoom (AS)

[Flash] problème de clip (Résolu)Bonjour tout le monde, Voilà j'ai un petit souci avec une animation flash Mon animation commence et stop à la frame contenant à la frame 60 un gotoAndPlay(70) qui est en faite ma page d'accueil cette page d'accueil est en clip (... www.commentcamarche.net/forum/affich-4119249-flash-probleme-de-clip
Flash bouton rollover (Résolu)Bonjour, J'essaye de faire défiler un texte contenu dans un textfield avec des boutons. Voici mon problème, lorsque je suis sur le bouton, mon texte défile mais 1 seule fois. Voici mon code : on (rollOver){ montexte.scroll -= 1; } on (rollOver){... www.commentcamarche.net/forum/affich-5944154-flash-bouton-rollover
Excel/VBA creer un bouton ds graph par macro (Résolu)Bonjour, j'ai une macro qui me cree un graphique, et je voudrai qu'elle y place un bouton auquel j'associe ma macro "backToMenu" Ma macro marche impec' pour ce qui est du graphique, mais le bouton n'apparait pas dans mon... www.commentcamarche.net/forum/affich-7846173-excel-vba-creer-un-bouton-ds-graph-par-macro

Résultats pour Flash: 1 bouton ds un clip de zoom (AS)

Télécharger Zoom PlayerZoom Player est un lecteur de CD/DVD Il a été conçu pour être simple à première vue. Pourtant, il est remarquablement dynamique et flexible une fois utilisé. Zoom Player fonctionne en deux modes. Un mode « média » qui peut lire n'importe quel fichier ... www.commentcamarche.net/telecharger/telecharger-34055414-zoom-player

Résultats pour Flash: 1 bouton ds un clip de zoom (AS)

Golden-interstar DSR 8001 PremiumMinuteur: ,Nombre de prises Péritel (SCART) :2 st,Télétexte: ,Port Common Interface: ,Modulateur RF: ,Nombre de prises Péritel (SCART) :2 st,Compatible Dolby Digital:  www.commentcamarche.net/guide-achat/golden-interstar-dsr-8001-premium-685981-fiche-technique
Golden-interstar DSR 8005CI Premium8005 CI,Affichage,Lecteur de cartes intégré: ,Type de récepteur:DVB-S,Electronic Program Guide (EPG),Minuteur: ,Télétexte,Compatible Dolby Digital: ,Modulateur RF: ,Nombre de prises Péritel (SCART) : ,Port Common Interface www.commentcamarche.net/guide-achat/golden-interstar-dsr-8005ci-premium-666402-fiche-technique
Flash Focus: Vision Training in Minutes a DayOther Names:Flash Focus,Strengthen Your Visual Power through Practice: DS Visual Training,Miru Chikara wo Jissen de Kitearu: DS Mejikara Training (JPN),Genre:Edutainment,Nb. de joueurs hors-ligne:1,Avis ESRB :Everyone 6+,Développeur:Namco Bandai /... www.commentcamarche.net/guide-achat/flash-focus-vision-training-in-minutes-a-day-995829-fiche-technique