7 mensajes Página 1 de 1
Hola buenas, vereis tengo en mi proyecto una screen para seleccionar los paquetes que quiero instalar y al finalizar una screen Finish with Run con 3 radiobuttons, mi duda es como hacer que dependiendo del paquete que haya seleccionado algunos de los 3 radiobuttons esten activados o desactivados. No se si me he explicado bien.

Ejemplo:

Si selecciono el Paquete01 al finalizar la instalación quiero que el radiobutton1 este activado, pero si no selecciono el Paquete01 al finalizar la instalación el radiobutton1 estará desactivado.

Tengo puesto esto en On Preload, pero no me funciona:

Package01 = DlgRadioButton.GetProperties(CTRL_RADIO_BUTTON_01);
Package02 = DlgRadioButton.GetProperties(CTRL_RADIO_BUTTON_02);
Package03 = DlgRadioButton.GetProperties(CTRL_RADIO_BUTTON_03);

if (Package01) then
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_01, {Enabled=true})
else
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_01, {Enabled=false})
end
Parsed in 0.002 seconds, using GeSHi 1.0.8.9


Saludos! y gracias de antemano.
Bueno yo de SUF no estoy muy puesto porque hace mucho que no lo utilizo , pero si usas paquetes de instalación el SUF tiene una screen solo para eso y ademas va muy bien por lo que recuerdo , ceone creo varios tutos para hacer cosas con suf.
Gracias rafaxplayer, leere los tutos de ceone haber que encuentro por ahi xD.

Saludos!
tu idea es buena, por así decirlo claro que carece de algunas ideas básicas...

bueno lo primero que te diré es que vamos a dar un ejemplos de un instalador con 3 posibles paquetes, paquete de ICONOS, paquete de IMÁGENES y paquete de OPIO!!!!

sabiendo eso que existen 3 paquetes y los 3 pueden ser seleccionados pues entonces en la pagina de seleccion de estos paquetes tenemos que crear un filtro que sea para denotar si el paquete de ICONOS a sido activado IMAGENES=true "es un ejemplo chorra".

Pues una vez sabido eso en la pagina final "Finish" en preload solo tendras que pondras un filtro que sea:

if (ICONOS) then
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_01, {Enabled=true})
else
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_01, {Enabled=false})
end

if (IMAGENES) then
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_02, {Enabled=true})
else
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_02, {Enabled=false})
end

if (OPIO) then
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_03, {Enabled=true})
else
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_03, {Enabled=false})
end
Parsed in 0.002 seconds, using GeSHi 1.0.8.9


si por ejemplos solo quieres que pueda ser 1 paquete el seleccionable es modificar un poco el filtro.

sobre tu script te diré que es un poco erróneo por que la función DlgRadioButton.GetProperties devuelve una tabla de modo que el resultado siempre sera positivo la funcion DlgRadioButton.GetProperties devuelve una tabla con los siguientes valores:

Checked (boolean)
Whether or not the radio button is selected. You can access this value using tb.Checked.

Enabled (boolean)
Whether or not the control is enabled. If true is returned the control is enabled. A false result means it is disabled. You can access this value using tb.Enabled.

Text (string)
The text currently displayed in the control. It can be accessed using tb.Text.

Visible (boolean)
Whether or not the control is visible. If true is returned the control is visible. A false result means it is not visible. You can access this value using tb.Visible.


si miras la ayuda te darás cuenta!!

espero que lo entiendas un saludo Ceone.
Muchas gracias Ceone, lo pondré en práctica y comentaré como me ha ido

Saludos!

EDITO: A lo mejor no me enterado bien xD porque no me funciona. En preload en la ventana de Finish he puesto lo siguiente:

if (Package01) then
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_01, {Enabled=true})
else
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_01, {Enabled=false})
end

if (Package02) then
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_02, {Enabled=true})
else
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_02, {Enabled=false})
end

if (Package03) then
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_03, {Enabled=true})
else
        DlgRadioButton.SetProperties(CTRL_RADIO_BUTTON_03, {Enabled=false})
end
Parsed in 0.002 seconds, using GeSHi 1.0.8.9


pero cuando termina la instalación me salen todos los radiobuttons bloqueados aunque instale todos los paquetes.
lógicamente tienes que definir Package01, Package02 y Package03.
Pero los Packages01, 02 y 03 son las IDs de los paquetes, deberian de estar definidos ya no??
7 mensajes Página 1 de 1

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado