horizontaler Tickerscroller gesucht

HammerHe@rt

Erfahrenes Mitglied
habe im moment einen Ticker der mit daten die ich per sql aus einer db lese von rechts nach links scrollt...nen einzeiliger Ticker also...

besteht die Möglichkeit dies auch in Flash zu realisieren....

gibs da fertige action scripts oder module?

hat wer paar tipps bzw links?


mfG
Hammerhe@rt
 
Erstelle einen MC in dem ein dynamisches Textfeld mit der variablen "news" ist
Dem MC weist du nun folgendes Script zu.
PHP:
onClipEvent (load) {
	news = "Text der durch den Ticker laufen soll";
}
onClipEvent (enterFrame) {
	erster = news.charAt();
	news = news.slice(erster.length, news.length)+erster;
}

Da der Ticker bei 24fps viiiiiel zu schnell ist, hab ich eine Schleife eingebaut. Je nach belieben die variable ix ändern:

PHP:
onClipEvent (load) {
	news = "Text der durch den Ticker laufen soll";
	var ix = 3;
}
onClipEvent (enterFrame) {
if(ix == 1) {
	erster = news.charAt();
	news = news.slice(erster.length, news.length)+erster;
	ix = ix + 2;
}
else {
	ix = ix - 1;
}
}

Hoffe Dir ist damit geholfen!

Gruß
BenFish

PS: Um deine SQL Daten zu nutzen, bau ein PHP Script welches folgenden Text ausspuckt: &news=Text der ticken soll

dann setzt du folgendes anstelle von " news = "Text der durch den Ticker laufen soll"; "
PHP:
loadVariables("server.de/script.php",);
 
Zuletzt bearbeitet:
vielen dank ersteinmal

habs hinbekommen und ohne schleife is auch nicht zu schnell...nur ruckelt mir das zu sehr...

geht das nicht etwas smooooother zu machen? *G*
da tun mir immer gleich die augen weh

also vielleicht nicht das man das buchstabe für buchstabe macht sondern den text bzw das textfeld bewegt pixelweise oder so? unter ner maske?

mfG
Hammerhe@rt
 
Das mit dem Ruckeln bekommst du weg, wenn Du als Schrift _typewriter bzw. Courier New nimmst. Da sind alle Buchstaben gleich breit!
dann siehts besser aus.
 
hmm ja besser aber mir noch zu hackelig....

das problem des textfeldes ist, das es dynamisch ist und ich deshalb nicht weiss wie ich das am besten pixelweise von rechts nach links bewege das textfeld....

das sollte doch smoother kommen oder?

mfG
Hammerhe@rt

obwohl deines natürlich eine elegante Lösung ist mit der Fkt. aber halt leider Buchstabenweise....
 
was muss denn in der *.php datei drinne stehen damit flash die var ziehen kann?

nur die sql und dann $news=abfrageergebnis

oder print $news;

oder wie sonst? *g*

mfG
Hammerhe@rt
 
Angenommen, du brauchst die Variable "news" in Flash, mit dem Text aus der DB, dann muss PHP folgendes ausspucken:

&news=Text aus der DB (wobei du das & am Anfang auch weglassen kannst)

Dein script sollte dann die SQL abfrage erledigen und dann am besten folgendes beinhalten:
PHP:
echo("&news=".$result['news']);
wobei $result das ergebnis-Array von mysql_fetch_array() ist, ausgegangen davon, dass es eine Spalte "news" in der Tabelle gibt.
 
k noch ne frage :-)

habe hier das AS

onClipEvent (load) {
System.useCodepage=true;
loadVariables("tick.php",news);
var ix = 2;
}



wieso muss ich da "loadVariables("tick.txt",news);"
,news schreiben

wenn ich nur das"," schreibe ohne news dann zeigt er einfach nix an...
dachte die var steht in der txt drinne ala "news=blabla"
 
Das news nach dem Komman in den Klammern, bezieht sich auf den MC in dem die Vars zur Verfügung stehen sollen. Wenn dann musst du das komma auch weg lassen, also
PHP:
onClipEvent (load) { 
System.useCodepage=true; 
loadVariables("tick.php"); 
var ix = 2; 
}
 
hab nach etwas suchen dieses script gefunden...

/*
Newsticker | FlashMX | 2002
http://www.flashhilfe.de

Einfach in ein Frame kopieren.
Das Movie sollte eine Bildrate (Strg + F3) von
min. 35 BpS haben.
*/
System.useCodepage=true;

news = '<font face="Verdana" size="10">Das ist der Newsticker Text mit oder ohne HTML Tags. \\\\-- <a href="http://www.flashhilfe.de" target="_blank"><font color="#0033CC">Flashhilfe.de</a></font> --\\\ ';

geschwindigkeit = 1;
x = 0;
y = 10;
tiefe = 1;


createTextField("newstext", tiefe, x, y, 200, 20);
newstext.html = true;
newstext.selectable = false;
newstext.htmlText = news;
newstext.autoSize = "left";

createTextField("newstext2", tiefe+1, x, y, 200, 20);
newstext2.html = true;
newstext2.selectable = false;
newstext2.htmlText = news;
newstext2.autoSize = "left";

newstext.setTextFormat(textformat);
newstext2.setTextFormat(textformat);

newstext2._x = newstext._width;

onEnterFrame = function() {
newstext._x -= geschwindigkeit;
newstext2._x -= geschwindigkeit;
if(newstext2._x <= x) {
newstext._x = x;
newstext2._x = newstext._width + x;
}
}


und das is nu wirklich smooth *G*
trotzdem zerrt das ganz schön an der cpu irgendwie...naja mal schauen
 

Neue Beiträge

Zurück