Hola, estoy creando secuencias de comandos en JMP Pro Application Builder.
- Tengo una ventana principal en la que tengo un botón que me lleva a una ventana secundaria. Dentro de la ventana secundaria, hay cuadros de edición de texto donde el usuario ingresa los valores. Además, hay un botón de cierre en esta ventana secundaria que guarda los valores en appNS y cierra la ventana secundaria.
- Tengo las variables inicializadas en la ventana principal para tener valores predeterminados de 0. Tengo problemas para que las variables usen los valores actualizados de la nueva ventana en lugar de los valores predeterminados. Imprime los valores predeterminados al instante en lugar de ejecutar la función y luego imprimir los valores actualizados. Cualquier ayuda sería apreciada.
Aquí hay algunos fragmentos de código como referencia (PredictiveModeling es la ventana principal y OptimizeModelWindow es la ventana secundaria):
appNS: ParamList1 = 0;
appNS: ParamList2 = 0;
appNS: ParamList3 = 0;
appNS: ParamList4 = 0;
appNS: ParamList5 = 0;
appNS: ParamList6 = 0;
OptimizeParamsButtonPress = Function( {this}, // This function is called when the OptimizeParams button is pressed on the PredictiveModeling Window
name = this << Get Button Name;
OptimizeModelWindow << Create Instance(thisModuleInstance);
Wait(OptimizeModelWindow);
PList1 = appNS: ParamList1;
PList2 = appNS: ParamList2;
PList3 = appNS: ParamList3;
PList4 = appNS: ParamList4;
PList5 = appNS: ParamList5;
PList6 = appNS: ParamList6;
Print(PList1,PList2,PList3,PList4,PList5,PList6);
);
Aquí es donde se leen las variables de los cuadros de edición y se actualizan los valores predeterminados...
doOptimizeParams = Function ( {},
HP1 = PEdit1 << Get Text;
appNS: ParamList1 = HP1;
HP2 = PEdit2 << Get Text;
appNS: ParamList2 = HP2;
HP3 = PEdit3 << Get Text;
appNS: ParamList3 = HP3;
HP4 = PEdit4 << Get Text;
appNS: ParamList4 = HP4;
HP5 = PEdit5 << Get Text;
appNS: ParamList5 = HP5;
HP6 = PEdit6 << Get Text;
appNS: ParamList6 = HP6;
);
CloseOptimizeButtonPress = Function( {this},
// This function is called when the Optimize button is pressed on the popup OptimizeModel window
name = this << Get Button Name;
doOptimizeParams();
Print(ParamList1,ParamList2,ParamList3,ParamList4,ParamList5,ParamList6);
(thisModuleInstance << GetBox) << Close Window;
);