Comunidad de diseño web y desarrollo en internet online

Problema mouseOver en DataGrid

Citar            
MensajeEscrito el 16 Jul 2008 08:35 am
Hola.

Estoy usando en una aplicacion un DataGrid y me ha surguido un problema que no consigo resolver.

Cuando pincho en una fila del datagrid soy capaz de leer los datos de esa fila e insertarlos en un textbox o cualquier otra cosa, pero lo que esoy intentando hacer es que en vez de tener que pinchar lo haga al pasar el raton por encima de la fila, y que cuando cambie de fila al deslizar el raton me cambie los datos otra vez, pero sin necesidad de tener que pinchar, solo con el mouseover.

Si que consigo saber que el raton esta encima de lo que es el datagrid, pero una vez ahi no consigo diferenciar sobre que fila se encuentra encima.

Si alguien sabe como solucionarlo me seria de gran ayuda.

Por sishco

5 de clabLevel



 

msie
Citar            
MensajeEscrito el 16 Jul 2008 04:36 pm
Uhmm, y si pruebas a hacer un itemRender por fila y el componente del itemRender le asignas un evento onmouseover .?

Por Zandy

Claber

1345 de clabLevel

5 tutoriales

Genero:Masculino   Premio_Secretos

firefox
Citar            
MensajeEscrito el 16 Jul 2008 04:40 pm
no te entiendo en eso de hacer un item render por fila, lo que he conseguido en acceder a una celda con mouse over con cellrender, pero no llego a entender como se agrupan las filas.

Por sishco

5 de clabLevel



 

msie
Citar            
MensajeEscrito el 16 Jul 2008 08:46 pm
tienes que usar el evento itemRollOver pues rollOver se dispara cuando pasas el mouse sobre el datagrid y itemRollOver cuando pasas el mouse por cada fila ;)

Por master_of_puppetz

Claber

2483 de clabLevel

7 tutoriales
3 articulos

Genero:Masculino   Premio_Secretos

WebDev (Flex + PHP + JS)

safari
Citar            
MensajeEscrito el 17 Jul 2008 07:04 am
si que me ha funcionado lo del itemROLLOVER, pero me ha surguido otro problema.
Os pongo un poco de el codigo que he utilizado.


var listaBusq:DataGrid = new DataGrid();
listaBusq.dataProvider = myDPBusq;
listaBusq.columns=[CargoColBusq, NombredestColBusq, DirecciondestColBusq];
listaBusq.rowCount=5;
listaBusq.addEventListener(ListEvent.ITEM_ROLL_OVER,eventoListaover);
listaBusq.addEventListener(ListEvent.ITEM_ROLL_OUT,eventoListaout);
listaBusq.addEventListener(Event.CHANGE, listaClick);

function eventoListaover(event:ListEvent):void{
trace("ListaON");
trace(event.toString());
//trace(event.index);
trace(event.currentTarget);
trace(listaBusq.getChildAt(event.index).toString());
}

function eventoListaout(event:ListEvent):void{
trace("ListaOFF");
}

function listaClick(e:Event):void {
campoMovil.visible=true;
var datos:String="Cargo:"+e.target.selectedItem.Cargo+"NombreDest:"+
e.target.selectedItem.Nombredest+"DireccionDest:"+e.target.selectedItem.Direcciondest
+"\nCiudadDest:"+e.target.selectedItem.Ciudaddest+"Pais Dest:"
+e.target.selectedItem.Paisdest;
campoMovil.label=datos;
}

Es un resumen del codigo, pero como veis lo que he conseguido es que
cuando el evento es Event.Change consigo leer los datos que hay en esa
fila del DataGrid mediante e.target.selecteditem.cargo cambiando cargo
por el campo que quiero(Ciudaddest,Paisdest,DireccionDest...)

Pero con el ItemRollOver no consigo acceder a los datos de esa forma.
El evento me devuelve la fila,columna, y en el currentTarget me devuelve el DATAGRID entero.
Si se os ocurre algo ...

Por sishco

5 de clabLevel



 

msie
Citar            
MensajeEscrito el 17 Jul 2008 01:44 pm
puedes hacer algo asi:

Código :

trace(listaBusq.getItemAt(event.rowIndex).elNombreDelCampo);

OJO! se usa getItemaAt para recuperar algun elemento en base al indice que le indiques

Por master_of_puppetz

Claber

2483 de clabLevel

7 tutoriales
3 articulos

Genero:Masculino   Premio_Secretos

WebDev (Flex + PHP + JS)

safari
Citar            
MensajeEscrito el 18 Jul 2008 08:58 am
Al final lo logre, use lo siguiente

event.currentTarget.selectedItem.Cargo

Gracias de todas formas.

Ahora tengo que intentar detectar cuando esta el raton encima de la barra de desplazamiento, puesto que me intenta acceder a los campos cuando tiene seleccionada la barra de desplazamiento y como que no me hace falta.

Si se os ocurre algo me comentais.

Por sishco

5 de clabLevel



 

msie7
Citar            
MensajeEscrito el 03 Nov 2008 02:55 pm
Hola, que tal soy nuevo en esto y me gustaria si pudieras colcoar un ejemplo completo de como utilizar de manera correcta el itemRollOver en un datagrid de flex para seleccion de registros completo y relacionarlos con otros componentes como: cajas de texto, labels, combos, etc... saludos::

mi correo: [email protected],[email protected]

Por L30N1D4Z

13 de clabLevel



 

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.