Comunidad de diseño web y desarrollo en internet online

Pregunta link dentro Datagrid

Citar            
MensajeEscrito el 05 Abr 2011 02:30 am
hola a todos regreso con otra pregunta.

trabajo flex 3 con php y me pregunto si puedo poner un link de descarga dentro de un datagrid?

esta es la idea..tengo mi datagrid que se alimenta con los datos de una tabla x
quiero que una columna me generee un boton o un link donde pueda descargar un documento
multi form..

ejemplo:

ced || nom || emp || Hoja de vida (link de descarga)
001 aaa 1 link->descarga doc
002 zzz 2 link->descarga doc


saludos..si hay manera de hacerlo mas facil escucho sugerencias gracias adios.

Por TeNm3

8 de clabLevel



 

chrome
Citar            
MensajeEscrito el 05 Abr 2011 02:07 pm
amigos de AS3 kisiera saber como hacer para q mi aplicacion reconozca a un usuario en cada fase.. me imagino q es con variables de session pero estoy parado !!
estoy usando flex b 3 y php xD
cualkier sugerencia es un tesoro =)

F1:logeo
F2:menu
F3:actividad

la idea esq en cada fase reconozca los atributos de un usuario x.

perdon si no me hago explicar bn..

Alejo

Por TeNm3

8 de clabLevel



 

chrome
Citar            
MensajeEscrito el 05 Abr 2011 04:26 pm
Para el link tendrías que hacer un itemRenderer. Te armas un componente Label por ejemplo y le escribis este código:

Código Flex :

<?xml version="1.0" encoding="utf-8"?>
<mx:Label xmlns:mx="http://www.adobe.com/2006/mxml" text="{data.hojaVida}"
   click="linkListener(event)" mouseOver="mouseOver(event)" 
   mouseOut="mouseOut(event)">
   <mx:Script>
      <![CDATA[
         private function mouseOver(event:MouseEvent):void {
            event.currentTarget.setStyle("color","0x0000FF");
            event.currentTarget.setStyle("textDecoration","underline");
         }
 
         private function mouseOut(event:MouseEvent):void {
            event.currentTarget.setStyle("color","0x000000");
            event.currentTarget.setStyle("textDecoration","none");
         }
 
         private function linkListener(event:MouseEvent):void {
            var request:URLRequest =
                           new URLRequest(event.currentTarget.data.hojaVida); 
            navigateToURL(request, "_blank");
         }
      ]]>
   </mx:Script>
</mx:Label>

Y después lo llamas desde el datagrid es decir desde tu columna (la columna que hace el link)... itemRenderer="LinkRenderer".
Cualquier cosa me preguntas... Saludos.

Por xchacalx

Claber

133 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Abr 2011 04:32 pm
hey amigo muchas gracias...lo implementare despues de almuerzo jojo..te contare como me salio..muchas gracias por la colaboracion..recuerdo q este link ira dentro de un datagrid...

Por TeNm3

8 de clabLevel



 

chrome
Citar            
MensajeEscrito el 05 Abr 2011 08:58 pm
bueno nunca he hecho un ejercicio asi..pero ya lo voy comprendiendo...creo un componente custom q es un label creo los eventos q va tener en este caso 3

entiendo casi todo..menos la funcion linklistener q no me keda muy clara..
se que hay una peticion q apunta al dato actual y luego lo envia?..

PD>al tener este componente custom en otro archivo.mxml como lo llamo si
mi datagrid estaria alojado en otro archivo diferente?....

la verdad esto es un inicio muy bueno para un novatote como yo ..pero kiero avanzar asi q si me puedes orientar NO TENDRIA COMO AGRADECERTE.obvio no espero q hagas el ejercicio por mi.

mi intencion es que pueda descargar un archivo desde el link generado por el datagrid ><....

:::ALEJO:::

Por TeNm3

8 de clabLevel



 

chrome
Citar            
MensajeEscrito el 06 Abr 2011 03:55 pm
La funcion linkListener lo que hace es capturar el evento del mouse y mandarte a la url, es decir donde esta el archivo hoja de vida. Seria propiamente dicho "el link"!

No hace falta que lo llames a ese componete creado, lo ve solito, sino proba y si lo lee es que esta todo bien. Para que lo pruebes tendrías que en la columna del datagrid poner algo así:
dataField="hojaVida" headerText="Hoja de vida" width="40" itemRenderer="LinkRenderer"

en dataField tu datafield al igual que en headerText y el width que vos quieras; y en timeRenderer iría el nombre del mxml que creaste o sea el LinkRenderer.
Cualquier problema volveme a escribir, espero que se entienda! Saludos. :)

Por xchacalx

Claber

133 de clabLevel



 

firefox

 

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