Página 1 de 1

interfaz con script

Publicado: Mar May 08, 2012 1:27 am
por jaimeZBD
Hola a todos, después de tiempo estoy por acá y tengo una duda: si hago un script para crear un interfaz pero lo evalúo dos veces, el interfaz se duplica. ¿cómo hago para borrar uno de estos interfaces que me sobra?
desde ya muchas gracias por sus consejos y un saludo

Jaime ZBD

Re: interfaz con script

Publicado: Mar May 08, 2012 2:03 am
por ikerJ
Buenas, Jaime,

Si estás usando el comando 'createDialog', usa estas líneas al principio de tu código para comprobar si esa ventana existe. Si es que sí, cierra la que hay y crea una nueva.

Código: Seleccionar todo

try (destroyDialog elNombreDeTuDialogo) catch()
Esto es lo mismo que...

Código: Seleccionar todo

if elNombreDeTuDialogo!= undefined do (destroyDialog elNombreDeTuDialogo)
... pero más elegante ;-) Lo primero que hay que hacer es destruir la ventana que ya hay flotando. Para eso, usamos esa función destroyDialog. ¿Pero y si es la primera vez que abrimos la ventana? MAXScript nos dará un error, diciendo que no reconoce ese nombre (elNombreDeTuDialogo). Para ello, envolvemos ese comando dentro de una función 'try', es decir, le decimos a MAX que 'intente' ejecutar esta orden. Si existe esa ventana, la cierra. Si no existe, ejecuta lo que hay dentro de catch... pero como no hemos puesto nada, pues no hace nada. Si dentro de catch pusiésemos algo como (print "No hay ninguna ventana abierta"), imprimiría eso en el 'listener' la expresión de 'try' da error. Aquí un poco mejor explicado:

http://www.kxcad.net/autodesk/autodesk_ ... ession.htm

¡Un abrazo!

Re: interfaz con script

Publicado: Mié May 09, 2012 5:25 pm
por jaimeZBD
gracias Iker, lo voy a incluir en mis apuntes y lo aplicaré al instante