¿Cómo actualizar valores separados en un cuadro de panel?Hola todos,
Quiero actualizar cuadros de edición de texto en una caja de panel. Traté de hacer eso usando Establecer elementos (que debería funcionar, por ejemplo, para el cuadro de panel) o parece que funciona si uno tiene un cuadro de lista y no valores separados de la lista o valores que se mostrarán ubicados en diferentes ubicaciones en un cuadro de panel. Le agradecería por pistas sobre cómo resolver ese problema. Atentamente.
//example values that will be updated each time when certain process is selected from the list (not shown here)
param1 = 1;
param2 = 2;
param3 = 3;
param4 = 4;
data_to_display = evallist({param1, param2, param3, param4}); //list of values to be displayed
infos = Panel Box("Module Infos",
V List Box(
H List Box(
V List Box(
Text Box( "Param1:" ),
Spacer Box(Size(10, 6)),
Text Box( "Param2:" ),
),
Spacer Box(Size(15, 5)),
V List Box(
Text Edit Box( Char( data_to_display[1] ), << Set Width( 130 ) ),
Spacer Box(Size(10, 3)),
Text Edit Box( Char( data_to_display[2] ), << Set Width( 130 ) ),
),
Spacer Box(Size(40, 5)),
V List Box(
Text Box( "Param3:" ),
Spacer Box(Size(10, 6)),
Text Box( "Param4:" ),
),
Spacer Box(Size(15, 5)),
V List Box(
Text Edit Box( Char( data_to_display[3] ), << Set Width( 100 ) ),
Spacer Box(Size(10, 3)),
Text Edit Box( Char( data_to_display[4] ), << Set Width( 100 ) ),
),
),
),
),
),
infos << Set items( data_to_display );
Re: ¿Cómo actualizar valores separados en un cuadro de panel?Los mensajes suben por la cadena, no bajan. El mensaje al objeto al que se hace referencia con información se pierde. Debe guardar la referencia devuelta por la función llamada para crear los cuadros de texto y luego usar la variable para enviar el mensaje Set () directamente a ese cuadro.
tb1 = Text Box( "Param1:" )
tb1 << Set( ... );
Re: ¿Cómo actualizar valores separados en un cuadro de panel?Los cuadros del panel solo contienen otros objetos. Puede establecer el título del cuadro del panel, pero eso es todo. El índice de secuencias de comandos es excelente para descubrir qué métodos funcionan en qué objetos de visualización.
Re: ¿Cómo actualizar valores separados en un cuadro de panel?Gracias por las respuestas Me las arreglo para actualizar los cuadros de edición de texto. En mi caso, el texto que se mostrará dependerá de lo que se haya seleccionado previamente en un cuadro de lista, y porque quería tener cuadros de texto vacíos al inicio de la aplicación, cambié la actualización de las variables del cuadro de texto antes del cuadro del panel donde los cuadros de edición de texto se encuentran y justo después de seleccionar la opción del cuadro de lista. Y obtuve el efecto deseado. Atentamente
new window("example",
H List Box(
Panel Box("Params",
params = List Box(
unique_param_list,
max selected( 1 ),
//todo..
//and then update of variables
t1 << set text(var1);
t2 << set text(var2);
t3 << set text(var3);
t4 << set text(var4);
),
),
Panel Box("Module Infos",
V List Box(
H List Box(
V List Box(
Text Box( "Param1:" ),
Spacer Box(Size(10, 6)),
Text Box( "Param2:" ),
),
Spacer Box(Size(15, 5)),
V List Box(
t1 = Text Edit Box( " ", << Set Width( 130 ) ),
Spacer Box(Size(10, 3)),
t2 = Text Edit Box( " ", << Set Width( 130 ) ),
),
Spacer Box(Size(40, 5)),
V List Box(
Text Box( "Param3:" ),
Spacer Box(Size(10, 6)),
Text Box( "Param4:" ),
),
Spacer Box(Size(15, 5)),
V List Box(
t3 = Text Edit Box( " ", << Set Width( 100 ) ),
Spacer Box(Size(10, 3)),
t4 = Text Edit Box( " ", << Set Width( 100 ) ),
),
),
),
),
);