NEWS FLUIDE AVEC ARRET AU PASSAGE DE LA SOURIS ET TEXTE HTML LIEN CLIQUABLE FICH
top30
Messages postés1158Date d'inscriptionvendredi 21 février 2003StatutMembreDernière intervention 6 août 2010
-
22 oct. 2007 à 23:27
paranoixfr
Messages postés4Date d'inscriptionjeudi 28 mai 2009StatutMembreDernière intervention 2 septembre 2009
-
12 août 2009 à 17:39
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
paranoixfr
Messages postés4Date d'inscriptionjeudi 28 mai 2009StatutMembreDernière intervention 2 septembre 2009 12 août 2009 à 17:39
Bonjour! merci pour ce code qui m'a aider à comprendre (enfin pas encore tout à fait) comment interagissait flash avec le xml.
Je suis hyper débutant et j'utilise CS3 en AS2. J'ai pris le temps de bien refaire le code selon les sources citées plus haut et tout va bien. Le problème est que j'aimerai integrer ce code à un swf pour que les news s'affiche sur le site en full flash. J'ai essayé en claquant betement le swf à la racine du site et son code sur une frame, tout va bien sauf que le clip s'arrète dès que l'on se trouve au dessus et sur la gauche du clip (j'ai tenté de comprendre ce systeme de mask puis je me suis dis qu'en loadant le clip avec un load movie tout irait pour le mieux)
J'ai donc crée un clip vide avec ceci par dessus:
}
mais là il me dit "Error opening URL 'file:///H|/travail/site%5Fjulie/site/scroll.swf'"
Et rien n'apparait...
Alors je sais que ça fait surement 300 fois que vous devez voir ce genre de cas mais bon il faut bien commencer un jour et malheureusement après avoir lu et relu les differents sujets à ce propos, je cafouille toujours autant et c'est des plus frustrant...
voilà j'espère que quelqu'un aura une reponse...
MERCI!
fabgarou
Messages postés1Date d'inscriptionlundi 25 août 2003StatutMembreDernière intervention15 avril 2009 15 avril 2009 à 14:58
je cherche a intégrer une photo dans ce cette source(genre 1 photo par news).
Sauriez vous m'aider?
Dodgygeaser
Messages postés2Date d'inscriptionmercredi 19 avril 2006StatutMembreDernière intervention16 avril 2008 16 avril 2008 à 17:12
Pouvez vous réaliser une maj et modifier l'archive zip avec les nouveaux ajouts svp merci
pentahertz
Messages postés28Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention 6 novembre 2007 15 avril 2008 à 09:27
voici le system complet
import flash.geom.*;
var container:MovieClip = getScrollContainer(this, 210, 110, 1);
//
function getScrollContainer(target:MovieClip, width:Number, height:Number, speed:Number):MovieClip
{
var container:MovieClip = target.createEmptyMovieClip('scrollContainer', target.getNextHighestDepth());
var clipField:MovieClip = container.createEmptyMovieClip('clipField', 0);
clipField.createTextField('field',5,520,5,width,height);
//
R_news = new LoadVars();
//objet d'envoie des variables flash --> php
S_news = new LoadVars();
R_news.onLoad = function(Psucces)
{
if (Psucces)
{
//il y'a eu un chargement
if (this.R_nb_news == 0)
{ //la base de donnée est vide
_root.letxt = "Pas de NEWS disponible !";
} else
{ //la base contient au moins une news
_root.letxt = "";
//on affiche cette news
for (var i = 0; i<this.R_nb_news; i++)
{ _root.letxt = this["R_texte_"+i]+"\n";
//var styleObj:TextField.StyleSheet = new TextField.StyleSheet();
//styleObj.onLoad = function(success:Boolean)
//{
// if (success)
// {
// container.clipField.field.styleSheet = styleObj;
// container.clipField.field.htmlText = _root.letext;
// }
}
//styleObj.load("styles.css");
//}
container.clipField.field.htmlText = _root.letxt;
container.init = true;
container.onRollOut();
}
} else
{
//il n'y'a pas eu de chargement
_root.letxt = "Erreur lors du chargement des NEWS...";
}
}
//<<<<<<<<<<<<<<<< On regarde s'il y'a des news >>>>>>>>>>>>>>>>
R_news.load("lirenews.php");
Dodgygeaser
Messages postés2Date d'inscriptionmercredi 19 avril 2006StatutMembreDernière intervention16 avril 2008 14 avril 2008 à 16:01
c'est parfait avec le code de top30 seulement j'aimerais pouvoir la positionner car elle est en haut à gauche et je ne veut pas la mettre la bas moi !!
pentahertz
Messages postés28Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention 6 novembre 2007 17 nov. 2007 à 09:58
Top30, super ton code ,mais..comment on le bouge de place ...
remarquer ligne 2 le changement correspond a 1 pixel a la place de 1/2
2 choses la modification doit porter sur le deplacement du textfield
ici : clipField.createTextField('field',0,520,5,width,height); X à 520 pixels
mais aussi le mask du textfield : mask._x=520 vous pouvez aussi modifier mask._y=0
import flash.geom.*;
var container:MovieClip = getScrollContainer(this, 210, 110, 1);
//
function getScrollContainer(target:MovieClip, width:Number, height:Number, speed:Number):MovieClip
{
var container:MovieClip = target.createEmptyMovieClip('scrollContainer', target.getNextHighestDepth());
var clipField:MovieClip = container.createEmptyMovieClip('clipField', 0);
clipField.createTextField('field',0,520,5,width,height);
12 août 2009 à 17:39
Je suis hyper débutant et j'utilise CS3 en AS2. J'ai pris le temps de bien refaire le code selon les sources citées plus haut et tout va bien. Le problème est que j'aimerai integrer ce code à un swf pour que les news s'affiche sur le site en full flash. J'ai essayé en claquant betement le swf à la racine du site et son code sur une frame, tout va bien sauf que le clip s'arrète dès que l'on se trouve au dessus et sur la gauche du clip (j'ai tenté de comprendre ce systeme de mask puis je me suis dis qu'en loadant le clip avec un load movie tout irait pour le mieux)
J'ai donc crée un clip vide avec ceci par dessus:
onClipEvent (load) {
loadMovie("scroll.swf", this);
}
mais là il me dit "Error opening URL 'file:///H|/travail/site%5Fjulie/site/scroll.swf'"
Et rien n'apparait...
Alors je sais que ça fait surement 300 fois que vous devez voir ce genre de cas mais bon il faut bien commencer un jour et malheureusement après avoir lu et relu les differents sujets à ce propos, je cafouille toujours autant et c'est des plus frustrant...
voilà j'espère que quelqu'un aura une reponse...
MERCI!
15 avril 2009 à 14:58
Sauriez vous m'aider?
16 avril 2008 à 17:12
15 avril 2008 à 09:27
import flash.geom.*;
var container:MovieClip = getScrollContainer(this, 210, 110, 1);
//
function getScrollContainer(target:MovieClip, width:Number, height:Number, speed:Number):MovieClip
{
var container:MovieClip = target.createEmptyMovieClip('scrollContainer', target.getNextHighestDepth());
var clipField:MovieClip = container.createEmptyMovieClip('clipField', 0);
clipField.createTextField('field',5,520,5,width,height);
//
var field:TextField = clipField['field'];
field.html = true;
field.multiline = true;
field.type = "dynamic";
field.wordWrap = true;
field.selectable = false;
field.autoSize = true;
field.font = "Arial"
field.mouseWheelEnabled = false;
//
// var format:TextFormat = new TextFormat();
// format.font = "Arial";
// format.textAlign = "Center";
// field.setTextFormat(0, firstIndex, format);
var mask:MovieClip = container.createEmptyMovieClip('mask', 1);
mask._x=520
mask.beginFill(0xFF6600,50);
mask.lineTo(width,0);
mask.lineTo(width,height);
mask.lineTo(0,height);
clipField.setMask(mask);
//
container.onEnterFrame = function():Void
{
if (this.init) {
var over:Boolean = mask.hitTest(_root._xmouse, _root._ymouse);
clipField._y -= (over ? 0 : speed);
//
if (clipField._y<=-clipField._height) clipField._y = height;
}
};
return container;
}
R_news = new LoadVars();
//objet d'envoie des variables flash --> php
S_news = new LoadVars();
R_news.onLoad = function(Psucces)
{
if (Psucces)
{
//il y'a eu un chargement
if (this.R_nb_news == 0)
{ //la base de donnée est vide
_root.letxt = "Pas de NEWS disponible !";
} else
{ //la base contient au moins une news
_root.letxt = "";
//on affiche cette news
for (var i = 0; i<this.R_nb_news; i++)
{ _root.letxt = this["R_texte_"+i]+"\n";
//var styleObj:TextField.StyleSheet = new TextField.StyleSheet();
//styleObj.onLoad = function(success:Boolean)
//{
// if (success)
// {
// container.clipField.field.styleSheet = styleObj;
// container.clipField.field.htmlText = _root.letext;
// }
}
//styleObj.load("styles.css");
//}
container.clipField.field.htmlText = _root.letxt;
container.init = true;
container.onRollOut();
}
} else
{
//il n'y'a pas eu de chargement
_root.letxt = "Erreur lors du chargement des NEWS...";
}
}
//<<<<<<<<<<<<<<<< On regarde s'il y'a des news >>>>>>>>>>>>>>>>
R_news.load("lirenews.php");
fichier PHP
<?
// connection
mysql_connect("host","nomdebase","password");
mysql_select_db("nomdebase");
// on selectionne le contenu
$d_news = mysql_query("SELECT * FROM news order by id desc");
// on initialise
$i = 0;
$listeResultats = "";
// boucle pour afficher le resultat
while($ligne = mysql_fetch_array($d_news)) {
$date=$ligne[date];
$titre=$ligne[titre];
$texte=$ligne[texte];
$listeResultats .= "&R_date_$i=$date&R_titre_$i=$titre&R_texte_$i=$texte";
// $listeResultats .= "&R_date_$i='ici'$le_titre";
$i++;
}
$listeResultats .= "&R_nb_news=$i&";
// On affiche pour la donner a Flash
echo $listeResultats;
?>
14 avril 2008 à 20:48
var container:MovieClip = getScrollContainer(this, 210, 110, 1);
//
function getScrollContainer(target:MovieClip, width:Number, height:Number, speed:Number):MovieClip
{
var container:MovieClip = target.createEmptyMovieClip('scrollContainer', target.getNextHighestDepth());
var clipField:MovieClip = container.createEmptyMovieClip('clipField', 0);
clipField.createTextField('field',5,520,5,width,height);
//
var field:TextField = clipField['field'];
field.html = true;
field.multiline = true;
field.type = "dynamic";
field.wordWrap = true;
field.selectable = false;
field.autoSize = true;
field.font = "Arial"
field.mouseWheelEnabled = false;
//
// var format:TextFormat = new TextFormat();
// format.font = "Arial";
// format.textAlign = "Center";
// field.setTextFormat(0, firstIndex, format);
var mask:MovieClip = container.createEmptyMovieClip('mask', 1);
mask._x=520
mask.beginFill(0xFF6600,50);
mask.lineTo(width,0);
mask.lineTo(width,height);
mask.lineTo(0,height);
clipField.setMask(mask);
//
container.onEnterFrame = function():Void
{
if (this.init) {
var over:Boolean = mask.hitTest(_root._xmouse, _root._ymouse);
clipField._y -= (over ? 0 : speed);
//
if (clipField._y<=-clipField._height) clipField._y = height;
}
};
return container;
}
14 avril 2008 à 16:01
17 nov. 2007 à 09:58
remarquer ligne 2 le changement correspond a 1 pixel a la place de 1/2
2 choses la modification doit porter sur le deplacement du textfield
ici : clipField.createTextField('field',0,520,5,width,height); X à 520 pixels
mais aussi le mask du textfield : mask._x=520 vous pouvez aussi modifier mask._y=0
import flash.geom.*;
var container:MovieClip = getScrollContainer(this, 210, 110, 1);
//
function getScrollContainer(target:MovieClip, width:Number, height:Number, speed:Number):MovieClip
{
var container:MovieClip = target.createEmptyMovieClip('scrollContainer', target.getNextHighestDepth());
var clipField:MovieClip = container.createEmptyMovieClip('clipField', 0);
clipField.createTextField('field',0,520,5,width,height);
var field:TextField = clipField['field'];
field.html = true;
field.multiline = true;
field.type = "dynamic";
field.wordWrap = true;
field.selectable = false;
field.autoSize = true;
field.font = "Arial"
field.mouseWheelEnabled = false;
var mask:MovieClip = container.createEmptyMovieClip('mask', 1);
mask._x=520
mask.beginFill(0xFF6600,50);
mask.lineTo(width,0);
mask.lineTo(width,height);
mask.lineTo(0,height);
clipField.setMask(mask);
16 nov. 2007 à 15:06
23 oct. 2007 à 10:58
Merci a+
23 oct. 2007 à 07:10
c'est exactement ce que je cherchais merci!
22 oct. 2007 à 23:27
22 oct. 2007 à 23:27
1/10
Prends ton "Fla", vide la bibliothèque et colles ceci dans la première frame :
////////////////////////////////////////////////////////////////////////////
import flash.geom.*;
//
var container:MovieClip = getScrollContainer(this, 200, 100, 0.5 );
//
function getScrollContainer(target:MovieClip, width:Number, height:Number, speed:Number):MovieClip
{
var container:MovieClip = target.createEmptyMovieClip('scrollContainer', target.getNextHighestDepth());
var clipField:MovieClip = container.createEmptyMovieClip('clipField', 0);
clipField.createTextField('field',0,0,0,width,height);
//
var field:TextField = clipField['field'];
field.html = true;
field.multiline = true;
field.type = "dynamic";
field.wordWrap = true;
field.selectable = false;
field.autoSize = true;
field.mouseWheelEnabled = false;
//
var mask:MovieClip = container.createEmptyMovieClip('mask', 1);
mask.beginFill(0xFF6600,50);
mask.lineTo(width,0);
mask.lineTo(width,height);
mask.lineTo(0,height);
clipField.setMask(mask);
//
container.onEnterFrame = function():Void
{
if (this.init) {
var over:Boolean = mask.hitTest(_root._xmouse, _root._ymouse);
clipField._y -= (over ? 0 : speed);
//
if (clipField._y<=-clipField._height) clipField._y = height;
}
};
return container;
}
//
function fillContainer(ok:Boolean):Void
{
if (!ok) {
container.clipField.field.htmlText = 'Erreur de chargement';
} else {
container.clipField.field.htmlText = this.firstChild.firstChild;
container.init = true;
container.onRollOut();
}
}
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = fillContainer;
xml.load('news.xml');
//
////////////////////////////////////////////////////////////////////////////