ayuda en relación con ViewStates CurrentStateChange en flex

  • dhina.techno
  • Newbie
  • Newbie
  • No Avatar
  • Registrado: Sep 22, 2007
  • Mensajes: 8
  • Status: Offline

Nota Septiembre 25th, 2007, 9:14 pm

Hola,
Yo soy un novato en flex 2,0 y 3,0 script acción.
Cuando se pulsa el botón, necesito dos cosas a suceder.
uno es el cambio desde mi punto de vista del Estado y otra es llamar a un actionscript en línea función.
<mx:Button x="84" y="192" label="Button" id="Button1" click="getit()"/>
(donde getit () inline es mi función en actionscript).
i saber cómo crear un nuevo estado y así sucesivamente. Sin embargo, debo saber, ¿Cómo puedo hacer estas dos cosas suceden en un sólo clic. He oído algo llamado CurrentStateChange que se encarga de esta funcionalidad. Por favor, hágamelo saber cómo utilizar esta CurrentStateChange, o si tiene algo que decir!

Su ayuda es muy apreciada!

gracias,
Dhina
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Septiembre 25th, 2007, 9:14 pm

  • spork
  • Brewmaster
  • Silver Member
  • Avatar de Usuario
  • Registrado: Sep 22, 2003
  • Mensajes: 6130
  • Loc: Seattle, WA
  • Status: Offline

Nota Septiembre 26th, 2007, 6:39 am

Sólo para aclarar algo, cuando usted dice que usted está utilizando una "línea" de función, quiere decir que el youve lo declaró en una <mx:Script> etiqueta, o no se escribe directamente a la función en el evento, haga clic en la etiqueta de botón? Im que va a asumir el consentimiento previo, me corregirá si Im equivocado.

La forma más fácil de manejar los estados es utilizar la propiedad currentState del objeto en cuestión. Cambiar esta propiedad va a cambiar el estado directamente.

Por ejemplo, puede establecer el estado inicial de su aplicación en una variable:
Código: [ Select ]
<mx:Script>
  <![CDATA[
    
    [Bindable]
    var applicationState : String = "first_state";
    
  ]]>
</mx:Script>
  1. <mx:Script>
  2.   <![CDATA[
  3.     
  4.     [Bindable]
  5.     var applicationState : String = "first_state";
  6.     
  7.   ]]>
  8. </mx:Script>


Ahora, desea enlazar este valor a las aplicaciones del Estado, así:
Código: [ Select ]
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  layout="absolute"
  currentState="{applicationState}">
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  3.   layout="absolute"
  4.   currentState="{applicationState}">

Observe cómo Ive utiliza el enlace de datos para enlazar el estado de la solicitud a la applicationState variable "." Ahora, para cambiar el estado de la solicitud, sólo tiene que cambiar esta variable para el nuevo Estado en su función:
Código: [ Select ]
private function getit() : void
{
  // your other code here...
  ...
  ...
  applicationState = "new_state";
}
  1. private function getit() : void
  2. {
  3.   // your other code here...
  4.   ...
  5.   ...
  6.   applicationState = "new_state";
  7. }

Buena práctica de programación es declarar todos los posibles estados como constantes estáticas que se puede cambiar fácilmente a cabo.
The Beer Monocle. Classy.
  • dhina.techno
  • Newbie
  • Newbie
  • No Avatar
  • Registrado: Sep 22, 2007
  • Mensajes: 8
  • Status: Offline

Nota Septiembre 26th, 2007, 8:51 am

Hi Spork,
Thnx una vez más para responder ..

el requisito es exacta ..
tengo unos cuantos de texto...un botón y un DataGrid....

la "basestate" tendrá sólo de texto y un botón ..

la gridstate tendrá anterior de texto, botones y un DataGrid...

i ll tomar las aportaciones de los usuarios de los de texto, y al mismo tiempo, haga clic en el botón, el gridstate y se llama también <mx:script> la función "getit ()" se llama el proceso de datos de texto para el DataGrid ..

para que, en última instancia, mi único botón de clic debe hacer dos cosas ..
1) cambio el estado a la gridstate
2) el proceso de datos y se unen a los DataGrid.

lo im haciendo ahora es ..

<mx:Button x="84" y="192" label="Button" id="Button1" click="currentState = "GridState""/>

es decir., im cambiar el estado a GridState clic en el botón .. pero cómo llamar a la función "getit ()"

Espero u entendido mi problema ..

gracias de antemano,
Dhina.
  • spork
  • Brewmaster
  • Silver Member
  • Avatar de Usuario
  • Registrado: Sep 22, 2003
  • Mensajes: 6130
  • Loc: Seattle, WA
  • Status: Offline

Nota Septiembre 26th, 2007, 9:33 am

Bueno, usted puede llamar a la línea después de cambiar la función del Estado, o añadir el cambio de estado a la función en sí.
Código: [ Select ]
<mx:Button x="84" y="192" label="Button" id="Button1" click="currentState = 'GridState'; getit();"/>
The Beer Monocle. Classy.
  • dhina.techno
  • Newbie
  • Newbie
  • No Avatar
  • Registrado: Sep 22, 2007
  • Mensajes: 8
  • Status: Offline

Nota Septiembre 26th, 2007, 8:53 pm

Hi Spork,
Usted rock man!
una vez más me uve muestra el buen camino ..

Muchas gracias por que ..
Digo yo, usted puede tomar como un plomo n continuar con mi proyecto :)

gracias,
Dhina
  • spork
  • Brewmaster
  • Silver Member
  • Avatar de Usuario
  • Registrado: Sep 22, 2003
  • Mensajes: 6130
  • Loc: Seattle, WA
  • Status: Offline

Nota Septiembre 26th, 2007, 9:27 pm

Mecer es algo que sólo es algo natural para mí. La experiencia de Flex, así, que tenga un poco de práctica.

Estamos encantados de ayudar. Bienvenido a Ozzu :)
The Beer Monocle. Classy.
  • dhina.techno
  • Newbie
  • Newbie
  • No Avatar
  • Registrado: Sep 22, 2007
  • Mensajes: 8
  • Status: Offline

Nota Septiembre 26th, 2007, 9:44 pm

hahaha .. thnx man!

Publicar Información

  • Total de mensajes en este tema: 7 mensajes
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 55 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© 2011 Unmelted, LLC. Ozzu® es una marca registrada de Unmelted, LLC