Ir para conteúdo

POWERED BY:

Arquivado

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

lendadomato

[Resolvido] Enviar texto digitado para um mc

Recommended Posts

Bom pessoal,

 

tenho um campo de texto e um botão de enviar, é

possível o visitante digitar um texto e enviar esse

texto digitado para uma parte do filme, ou para um mc?

 

Tenho um editor e gostaria q o visitante formatasse esse

texto e simultaneamente o texto alterasse em tempo real em

um determinado mc.

 

tipo assim, digita aqui e aparece ali, acho q fui claro.

 

Desde já umildemente agradeço a ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

pessoal,

achei um exemplo da Adobe que me serve perfeitamente depois

de umas adaptações, mas eu não estou conseguindo enviar

o texto formatado com as fontes, tamanhos e cores, etc...:

 

segue abaixo o fonte:

import fl.controls.*;
import fl.data.DataProvider;


// populate the instances on the Stage.
font_cb.labelField = "fontName";
font_cb.dropdown.iconField = null;
font_cb.dataProvider = new DataProvider(Font.enumerateFonts(true).sortOn("fontName"));

// add a few standard font sizes to the size_cb ComboBox instance.
size_cb.dataProvider = new DataProvider([8, 10, 12, 14, 16, 20, 24, 32, 36, 48, 64, 96]);

// add a handful of common colors manually.
color_cb.addItem({data:0x000000, label:'Preto'});
color_cb.addItem({data:0xFFFFFF, label:'Branco'});
color_cb.addItem({data:0xFF0000, label:'Vermelho'});
color_cb.addItem({data:0x00FF00, label:'Verde'});
color_cb.addItem({data:0x0000FF, label:'Azul'});
color_cb.addItem({data:0xFFFF00, label:'Amarelo'});
color_cb.addItem({data:0xFF9900, label:'Laranja'});


// create a listener object which will be used to listen to several component instances.
function comboBoxChangeListener(event:Event):void {
applyStyle(event.currentTarget);
}

function buttonClickListener(event:MouseEvent):void {
applyStyle(event.currentTarget);
}

// add the same listener object to each of the formatting components on the Stage.
font_cb.addEventListener(Event.CHANGE, comboBoxChangeListener);
size_cb.addEventListener(Event.CHANGE, comboBoxChangeListener);
bold_button.addEventListener(MouseEvent.CLICK, buttonClickListener);
italic_button.addEventListener(MouseEvent.CLICK, buttonClickListener);
sizeUp_button.addEventListener(MouseEvent.CLICK, buttonClickListener);
sizeDown_button.addEventListener(MouseEvent.CLICK, buttonClickListener);
color_cb.addEventListener(Event.CHANGE, comboBoxChangeListener);

function applyStyle(theObject:*):void {

var my_fmt:TextFormat = input_txt.getTextFormat(input_txt.selectionBeginIndex);
// because the majority of the code in this function is the same, 
// rather than rewrite the code for each instance, we'll perform a "switch" 
// on the name of the target component and simply change the one paramter in the format.
switch (theObject) {
	case font_cb :
		// if the font_cb ComboBox instance is changed, set the font to the currently selected item in the ComboBox.
		my_fmt.font = ComboBox(theObject).selectedItem.fontName;
		break;
	case size_cb :
		my_fmt.size = ComboBox(theObject).selectedLabel;
		break;
	case bold_button :
		// if the bold_btn Button instance is clicked, toggle the bold property.
		my_fmt.bold = !my_fmt.bold;
		break;
	case italic_button :
		my_fmt.italic = !my_fmt.italic;
		break;
	case sizeUp_button :
		// if the sizeUp_btn Button instance is clicked, increment the font size by one pixel.
		my_fmt.size += 1;
		break;
	case sizeDown_button :
		my_fmt.size -= 1;
		break;
	case color_cb :
		// if the color_cb ComboBox instance changes, set the color to the currently selected item's data property
		my_fmt.color = ComboBox(theObject).selectedItem.data;
		break;
}
// reapply the text format.
input_txt.setTextFormat(my_fmt, input_txt.selectionBeginIndex, input_txt.selectionEndIndex);

}

 

estou tentando enviar assim:

btn_envia.addEventListener(MouseEvent.CLICK, quandoClicarNoBotao);

function quandoClicarNoBotao(evento:MouseEvent):void
{

caixa.text = (input_txt.text);

}

 

ele envia mas preciso que envie o texto formatado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Experimente definir a formatação na caixa que vai receber o texto, idem a que está enviando.

 

 

Abraços

 

 

Olá Elektra,

não consegui da forma que você falou,

 

fiz uma gambiarra e não sei se é o jeito certo de programar, mas

resolveu em partes a questão, criei um mc_vazio e instanciei ele

de receptor, que ao clicar no botão envia a caixa de texto para dentro

do mc em outro lugar no stage, e depois no botão de limpar eu criei a função

para limpar a instancia receptor que esta a caixa de texto e retornando ela

para o ponto inicial de digitação,pois bem, fiz dessa forma porque eu preciso

de mover esse texto digitado com Drag and Drop.

 

como ficou o botão enviar e limpar:

btn_envia.addEventListener(MouseEvent.CLICK, quandoClicarNoBotao);

function quandoClicarNoBotao(e:MouseEvent):void{
input_txt.setSelection(0, input_txt.text.length)
System.setClipboard(input_txt.text);
receptor.addChild(input_txt);

}


btn_limpar.addEventListener(MouseEvent.CLICK, limpar);

function limpar(evento:MouseEvent):void
{
receptor.text = "";
addChild(input_txt);


}

 

aqui o swf teste

aqui o arquivo fla

 

o que eu preciso agora é o que eu acho ser

uma coisa simples de resolver, preciso

que ao enviar o campo texto para o mc receptro

ele vá com outro tamanho pois se o visitante

digitar um texto com varias linhas esse texto

não venha faltando linhas.

 

se tiver uma solução por favor não deixe de postar, obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

A propriedade htmlText deve ter o texto formatado. Experimente assim:

caixa.htmlText = input_txt.htmlText;

 

 

amigo Bruno, sua dica resolveu a questão do texto

formatado, mas como havia dito acima preciso mover

esse texto com Drag and Drop e como o campo texto não

é um movieclip estou com dificuldades em arrastar e soltar

esse campo, pode me dar mais uma dica?

 

amigos,

 

consegui resolver, converti o campo texto

em movieclip e ficou tudo certo do jeito

que eu preciso, ficando assim:

caixa.caixa.htmlText = input_txt.htmlText;

 

Muito obrigado a todos!

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.