Da forma anterior que vc passou funcionou sim, porém não queria ter que declarar todos os tipos de componentes,
vou Tentar da forma que vc passou agora tbm e já reporto Vlw --- HAROLDO FRANZIN MSN: haroldo_fran...@hotmail.com On Thu, 21 Jul 2011 09:11:51 -0300, Eric Tonussi wrote: > Mas funcionou ou nem asim? Se não, voce pode ter que declarar o skinClass de cada componente que adicionar. Algo ssim: > > public function addEl(frm:Form, el:Class, name:String):void{ > registerClassAlias(name,el); > > var clazzTI:Class = getClassByAlias(name); > var instance:UIComponent = new clazzTI() as UIComponent; > > if ( instance is SkinnableComponent ) { > SkinnableComponent(instance).setStyle( 'skinClass' , ???? ); > } > > instance.addEventListener(FocusEvent.FOCUS_IN,component_focusInHandler); > > frm.addElement(instance as UIComponent); > } > > Em 21 de julho de 2011 08:58, Haroldo Franzin escreveu: > >> Certo, >> Mas dessa forma vou ter que Carregar "TODOS" os componentes, sendo que nem todos vou utilizar >> >> --- >> >> Haroldo Franzin >> MSN: haroldo_fran...@hotmail.com [11] >> >> On Thu, 21 Jul 2011 08:50:55 -0300, Eric Tonussi wrote: >> >>> É normal dar erro de skin quando se cria objetos dinamicamente dessa forma. Tente declarar uma vez pelo menos cada objeto que você vai criar no declaration, dessa forma: >>> >>> Abraços >>> >>> Em 20 de julho de 2011 17:35, Haroldo Franzin escreveu: >>> >>>> Pessoal >>>> >>>> Estou fazendo criação de componentes em Tempo de excução, porém na hora que executo a função da esse erro no debug do navegador >>>> >>>> ERRO: >>>> >>>> Error: Não é possível localizar capa para main.ApplicationSkin2._ApplicationSkin_Group1.contentGroup.FormComponents.FormSkin42.contentGroup.TextInput144. >>>> at spark.components.supportClasses::SkinnableComponent/attachSkin() >>>> >>>> at spark.components.supportClasses::SkinnableComponent/validateSkinChange() >>>> at spark.components.supportClasses::SkinnableComponent/createChildren() >>>> at mx.core::UIComponent/initialize() >>>> at mx.core::UIComponent/http://www.adobe.com/2006/flex/mx/internal::childAdded() [1] >>>> >>>> at mx.core::UIComponent/addChildAt() >>>> at spark.components::Group/addDisplayObjectToDisplayList() >>>> at spark.components::Group/http://www.adobe.com/2006/flex/mx/internal::elementAdded() [2] >>>> >>>> at spark.components::Group/addElementAt() >>>> at spark.components::Group/addElement() >>>> at spark.components::SkinnableContainer/addElement() >>>> at main/addEl() >>>> at Function/http://adobe.com/AS3/2006/builtin::apply() [3] >>>> >>>> at r1.deval.rt::CallExpr/getAny() >>>> at r1.deval.rt::ExprStmt/exec() >>>> at r1.deval.rt::Block/exec() >>>> at r1.deval.rt::Block/run() >>>> at r1.deval.rt::Env$/run() >>>> at r1.deval::D$/eval() >>>> at main/eval() >>>> at main/btnCriar_clickHandler() >>>> >>>> at main/__btnCriar_click() >>>> >>>> ESTOU SEGUINDO O SEGUINTE PROCEDIMENTO: >>>> >>>> protected function btnCriar_clickHandler(event:MouseEvent):void >>>> { >>>> if (lstComponentes.selectedIndex >= 0){ >>>> var sb:StringBuffer = new StringBuffer(); >>>> var nome:String = lstComponentes.selectedItem; >>>> >>>> sb.append("import spark.components."+nome+"; "); >>>> sb.append("n"); >>>> sb.append("addEl(FormComponents, "+nome+",'spark.components."+nome+"');"); >>>> >>>> eval(sb.toString()); >>>> } >>>> } >>>> >>>> public function addEl(frm:Form, el:Class, name:String):void{ >>>> registerClassAlias(name,el); >>>> var clazzTI:Class = getClassByAlias(name); >>>> var instance:UIComponent = new clazzTI() as UIComponent; >>>> >>>> instance.addEventListener(FocusEvent.FOCUS_IN,component_focusInHandler); >>>> >>>> frm.addElement(instance as UIComponent); >>>> } >>>> >>>> Biblioteca: r1.eval.d >>>> >>>> -- >>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com [4] >>>> Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com [5] >>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev [6] >>> >>> -- >>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com [8] >>> Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com [9] >>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev [10] >> >> -- >> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com [12] >> Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com [13] >> Mais opções estão disponíveis em http://groups.google.com/group/flexdev [14] > > -- > Você recebeu esta mensagem porque está inscrito na lista "flexdev" > Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com > Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com > Mais opções estão disponíveis em http://groups.google.com/group/flexdev [16] Links: ------ [1] http://www.adobe.com/2006/flex/mx/internal::childAdded%28%29 [2] http://www.adobe.com/2006/flex/mx/internal::elementAdded%28%29 [3] http://adobe.com/AS3/2006/builtin::apply%28%29 [4] mailto:flexdev@googlegroups.com [5] mailto:flexdev-unsubscr...@googlegroups.com [6] http://groups.google.com/group/flexdev [7] mailto:haroldo_fran...@newstandard.com.br [8] mailto:flexdev@googlegroups.com [9] mailto:flexdev-unsubscr...@googlegroups.com [10] http://groups.google.com/group/flexdev [11] mailto:haroldo_fran...@hotmail.com [12] mailto:flexdev@googlegroups.com [13] mailto:flexdev-unsubscr...@googlegroups.com [14] http://groups.google.com/group/flexdev [15] mailto:haroldo_fran...@newstandard.com.br [16] http://groups.google.com/group/flexdev -- Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com Mais opções estão disponíveis em http://groups.google.com/group/flexdev