Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

DDani

Texto rolante tipo "noticias"

Recommended Posts

Mais uma vez estou aqui com uma dúvida:é possível fazer no Flash uma caixa com texto rolante tipo "notícias"? E assim que clicado em, or exemplo "saiba mais", carrega um .txt numa caixa de texto dinâmico?se for, peço ajuda para me explicarem, por favor.Muito obrigada!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Da sim, você monta seu txt dessa forma:

 

texto= Aqui todo o texto dentro do tx, bla bla bla...

 

 

e no botão você coloca:

 

var a:LoadVars = new LoadVars();

a.load("arquivo.txt");

a.onLoad = function(){

caixa_de_texto.text = this.texto;

}

 

ai é só dar o nome de instancia de caixa_de_texto pro seu campo de texto dinamico

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro, obrigada pela explicação, mas não usei o botão porque coloquei esses comandos no botão e deu o erro "Statement must appear within on handler", e depois que coloquei direto numa layer, ele funcionou.

Eu precisaria que a rolagem fosse automática, ou seja, acesos esse .swf e o texto rola automaticamente sem ter que clicar em nada. Quando clico em [saiba mais], ai sim ele carrega um texto externo numa segunda caixa de texto dinâmico.

O texto.txt é por exemplo:

 

 

texto=Lorem Ipsum

Lorem ipsum dolor sit amet, consectetuer adipiscing elit.

[saiba mais]

 

Lorem Ipsum

Lorem ipsum dolor sit amet, consectetuer adipiscing elit.

[saiba mais]

 

 

queria saber se é possível colocar atributos de texto nesse arquivo .txt como bold, mudar a cor, e principalmente colocar um link no [saiba mais].

 

Ou, se é possível carregar um noticias.html dentro desta caixa de texto dinãmico.

 

mais uma vez obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nesse arquivo txt você pode usar as maiorias dos tag em html...<a href="seuurl"> para links </a><font color="#ff0000"> para cores </font><b> para bold </b><u> para sublinhado </u><i> para italico </i>e por ae vai ...Obs: você tem que habilitar nas propriedades da caixa de texto dinâmico a função "render as html" ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigada F r e a x e Carneirinho pelas explicações, mas ainda estão ocorrendo alguns erros:

 

Estou utilizando este comando como disseram:

Ele está carregando o texto noticias.txt na caixa de texto dinâmico.

 

var a:LoadVars = new LoadVars();

a.load("noticias.txt");

a.onLoad = function(){

cartex.caixa_noticias.text = this.noticias;

}

 

Mas ele está rolando só se eu direciono para cima ou para baixo com o mouse, e eu preciso que ele role automaticamente, sem ter que fazer nada.

Ou seja, na hora em que o swf aparece, o texto já começa a rolar sozinho. Tem como fazer isso?

 

 

Outra dúvida: no arquivo "noticias.txt" está assim:

 

noticias =<b>noticias do dia</b>

bla bla bla bla bla.....

 

Quando eu carrego ele na caixa de texto, ele vem desse jeito mesmo <b>notícias do dia</> bla bla bla, e não o título em bold notícias do dia.

 

Habilitei o "render text as html" mas mesmo assim ele não está vindo com os atributos que coloquei.

Por quê?

 

 

E mais uma dúvida:

 

Numa parte do texto está assim "a empresa X + a empresa Y..."

e o sinal de "+" não está aparecendo, existe algum código específico para esse sinal?? porque eu procurei, e não consegui achar.

 

Mais uma vez obrigada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigada, Carneirinho.Fiz o que você falou e deu certo quanto aos atributos de HTML como cor, por exemplo.Mas, o texto ainda não está rolando automático e nem o sinal de "+" está aparecendo. Esse será um dos mistérios da informática?Obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sempre que você for usar esses caracteres especiais, como + % e etc, você terá que usar o escape, que é tipo um código que representa aquela tal letra, pra fazer isso você pode usar somente o flash, mas eu uso o php, no flash você vai pedir o código dele entre aspas assim:

 

trace(escape("+"));

 

isso vai retornar %2B, dai você troca no seu campo de texto o + por esse palavrão de gibi ai, e no flash você vai fazer assim:

 

 

var a:LoadVars = new LoadVars();

a.onLoad = function(){

str1 = a.texto; trace(str1);

caixa_de_texto.text = str1;

}

a.load("arquivo.txt");

 

você vai ver que no trace agora ele le o sinal de + e vai colocar no seu campo de texto, agora só não entendi direito o lance da rolagem, como você quer a rolagem?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Carneirinho, achei um site com o que gostaria de fazer, é o:

 

http://www.centernorte.com.br/

 

na parte dos cinemas, onde aparece a lista dos filmes. Vão rolando automaticamente sem ter que clicar me nada.... se você para o mouse em cima de um dos filmes, ele para de rolar e você acessa o filme.

 

É possível fazer isso em flash??

 

Obrigada mais uma vez

Compartilhar este post


Link para o post
Compartilhar em outros sites

Da sim, e até é fácil, nã otem tanto segredo, você coloca seu cmpo de texto dentro de um movieclip e depois é só colocar um enterFrame nele pedindo para o _y dele diminuir, por exemplo:

 

onClipEvent (load) {
	rolar = true;
}
onClipEvent (enterFrame) {
	if(rolar){
		_y --;
	}
}
on(rollOver){
	rolar = false;
}
on(rollOut, releaseOutside ){
	rolar = true;
}

tenta ai e qquer coisa posta denovo.

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olás

 

mais uma vez obrigada pelas tuas explicações.

Está quase tudo dando certo.

Está aparecendo o "+", pelo código %2b, e também o "@" pelo %40. Agora entendi o "trace(escape())", dai vou procurando os códigos que preciso.

 

Apliquei as tags do html, e o texto está aparecendo com as diferenças que preciso. Só não consegui fazer o link.

O código que estou usando é: <a href="textos/not1.txt" target="cardet1.cartex">[saiba mais]</a>

onde "cardet1" é o movie clip que contém o caixa de texto dinâmico "cartex" e a variável é "texto1"

 

Está rolando o texto do jeito que preciso, só que o texto que deve rolar lá, aparece só em partes. Por exemplo, se a caixa de texto dinãmico tem 18 linhas, e o texto muito mais que isso, só aparecem 18 linhas rolando e fora dos limites da caixa de texto. Não entendi porque acontece isso. Tentei fazer uma máscara como limite, mas dai o texto não aparece.

O código que estou usando é este que você passou e apliquei num movie clip com a caixa de texto dinâmico dentro.

 

onClipEvent (load) {

rolar = true;

}

onClipEvent (enterFrame) {

if(rolar){

_y --;

}

}

on(rollOver){

rolar = false;

}

on(rollOut, releaseOutside){

rolar = true;

}

 

E aproveitando a pergunta do nosso amigo, é possível utilizar isto com um banco de dados? Cada vez que carrego uma notícia no banco de dados, ele acrescenta na rolagem?

 

obrigada e um abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem como você usar o php, asp ou qquer outra linguagem de programação dinamica, ai essa vai fazer a consulta no banco e ja retorna pro flash tratado, é o que costumamos fazer, existem vários modos, mas o que o flash vai fazer é sempre o mesmo, o´bom é que usando o php você pode usar o unlercode pra ja mandar a msg encodada no flash, assim você não precisa de uma tabela ou ficar usando aquele trace pra descobrir letra por letra o que vai no campo de texto, ficaria mais ou menos assim:

 

PHP:

<?php 
header('Content-type: text/html; charset=utf-8'); 

$phone="+353 (0) 71 9620175"; 

$str_encoded=urlencode($phone); 
echo "&str1=".$str_encoded."&"; 

$str2 = "€10.35"; 
echo "&str2=".$str2."&"; 
?>

Flash:

 

path = "http://www.seusite.com.br/arquivo.php";

lv = new LoadVars();

lv.onLoad = function(){

str1 = lv.str1; trace(str1); // +353 (0) 71 9620175

str2 = lv.str2; trace(str2); // €10.35

};

lv.load(path);

 

dai você notará que ele ja vai passar os parametros no flash com o encode, claro que pra fazer a consulta num banco você ai ter que manjar o básico de php e mysql.

 

pro seu campo de texto pegar mais do que as 18 linhas você joga o autoSize dele pra true, por exemplo:

 

nome_do_campo.autoSize = true;

 

ai ele vai adicionando as linhas pra baixo conformte precisar, para isso ative o multline tb, agora da navegação eu não entendi direito, preciso fazer uams coisas agora na empres e mais tarde tento resolver isso ai pra você.

 

abraço,

 

Carneirinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

Carneirinho, mais uma vez obrigada peals explicações.Estou estudando essas dicas para montar o que preciso, e se tiver mais alguma dúvida com certeza vou postar.Mais uma vez obrigadaAbraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal!

 

Volto ainda com uma dúvida em relação à rolagem de texto.

Fiz o que todos você me indicaram, mas não está funcioando como deveria.

Estou disponibilizando o arquivo .FLA e um .TXT de exemplo para ver se consigo explicar melhor o erro.

 

arquvo fla e texto

 

No lado dirieto, o texto está ultrapassando os limites da caixa onde deveria aparecer, e não está carregando o texto inteiro.

 

Quando eu clico em "saiba mais", deverá aparecer o texto no box da esquerda. Eu não sei como fazer.

 

Na realidade estou fazendo isso em flash para manter os mesmos padrões de scroll do resto do site.

 

Se alguém puder dar uma olhada, agradeço muito.

 

Mais uma vez obrigada,

 

http://forum.imasters.com.br/public/style_emoticons/default/shifty.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal!

 

Volto ainda com uma dúvida em relação à rolagem de texto.

Fiz o que todos você me indicaram, mas não está funcioando como deveria.

Estou disponibilizando o arquivo .FLA e um .TXT de exemplo para ver se consigo explicar melhor o erro.

 

arquivo teste

 

No lado dirieto, o texto está ultrapassando os limites da caixa onde deveria aparecer.

 

Carneirinho, fiz como você falou, coloquei o comando

caixa_noticias.autoSize = true;
E apesar de estar carregando inteiro, perdeu toda a formatação que eu queria.

 

Quando eu clico em "saiba mais", deverá aparecer o texto no box da esquerda. Eu não sei como fazer.

 

Na realidade estou fazendo isso em flash para manter os mesmos padrões de scroll do resto do site.

O swf vai ser usadao com um arquivo asp para carregar as notícias.

 

Se alguém puder dar uma olhada, agradeço muito.

 

Mais uma vez obrigada,

 

http://forum.imasters.com.br/public/style_emoticons/default/shifty.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.