Deus ex machina

Emulando click en combobox

2008-08-15 16:19:47-05

Codigo

 

El problema surgió de la siguiente forma, después de haber liberado dos proyectos hechos en flex, las cuales ya habían sido probadas con la base de datos sin ningún problema y cuya funcionalidad ya estaba probada, surgió el inconveniente de que al embeber estos en una aplicación (Winform) propia del cliente, ya que esta mandaba llamar una form.mdiparent que era un webbrowser el cual cargaba los swf de flex, al hacer esto las aplicaciones trabajaban casi al 100% el problema eran los componentes combobox que perdían funcionalidad, ya que el evento de clic  no era registrado por la aplicación si era cargada desde el webbrowser, bueno dudo mucho que alguien de la comunidad de la mononeurona tenga un problema similar y espero no estar corrompiendo la ideología de la misma, pero bueno lo solucione con el siguiente código:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="initApp()" viewSourceURL="srcview/index.html">

<mx:Script>
<![CDATA[

import mx.events.ListEvent;
public var info:String;

private function initApp():void
{

var data:XML = <campos>
<a label="Ubuntu" datos="0"/>
<a label="Debian" datos="1"/>
<a label="Suse" datos="2"/>
<a label="Red Hat" datos="3"/>
</campos>;

arbol = data.children();

}

private function Combo(event:ListEvent):void
{
var item:XML = event.itemRenderer.data as XML;
info = String(item.@datos);
}

]]>
</mx:Script>

<mx:XMLList id="arbol" />

<mx:ComboBox close="combo.selectedIndex=int(info)" id="combo" dataProvider="{arbol}" labelField="@label"
itemRollOver="Combo(event)"/>

</mx:Application>

Solo es crear un combobox que registre sobre que elemento de la lista estamos posicionados con el mouse, lógicamente el ultimo sobre el cual nos posicionaremos será sobre el cual hacemos clic es por ello que utilizamos el evento itemRollOver y Close del combobox, la función combo() registra el elemento sobre el cual esta el puntero del mouse mientras que el evento close solo cambia el ítem seleccionado del combobox.

Permalink: http://www.mononeurona.org/users/entry/kenshin/1505


Login



Remember me:
kenshin
Linux, sci fi, astronomia
cars education environment hacking music arts
Powered by:
Despabilando la MonoNeurona.org
Livechat

<-Nombre
¿Qué estuve haciendo?
alguien asistio al developer day de google?
on 24/6/08
como dice vendaval que envidia, pero de la buena. Felicidades
on 30/5/08
dandome de topes con blaze ds & air
on 26/5/08
Claro aunque el problema es la pila y que los controles de juego no son suficientes
on 21/4/08
jugando con una olpc
on 21/4/08
FirefoxjEdit.orgGimpOpenOffice.orgHacker
Top
Colectivo MonoNeurona.org © 2002-2008.