Con esta función creamos un cuadro de diálogo con una caja de texto, en blanco o con un valor por defecto, que nos permite preguntar al usuario cualquier tipo de cadena de texto, número, ruta.. El valor lo podremos recoger en una variable y utilizarla como queramos.
Es una función totalmente necesaria si queremos que nuestro código interaccione con el usuario en algo más que poner tan solo SI o NO como con la funcion confirmDialog.
inputbox(message [, title, messageType, initialValue]) lib: commonsDialog param: message (string), mensaje a mostrar param: title (string)(opcional), título de la ventana messageType (integer)(opcional), icono de la ventana 0 - FORBIDEN: icono de prohibído 1 - IDEA: icono de idea 2 - WARNING: icono de alerta 3 - QUESTION: icono de pregunta param: initialValue (string), texto inicial en la caja de texto
Y la ventana generada para el ejemplo:
inputbox("Introduce tu nombre","Nombre",3,"Sr. ")
Y si lo utilizamos en un ejemplo puede ser algo del siguiente tipo:
from gvsig import * from commonsdialog import * def main(): """Ej. de inputbox, pide nuestro nombre y dos numeros que suma""" #Pide su nombre y da la bienvenida valor = inputbox("Introduce tu nombre","Nombre",3,"Sr. ") print ("Hola %s, bienvenido a gvSIG" % valor) #Pide el valor de dos numeros num1 = inputbox("Introduzca primer numero para sumar: ") num2 = inputbox("Segundo numero: ") #Los valores entran como string, cadena de texto print "Variables de tipo texto: (une) ", num1 + num2 #Convertimos a integer mediante int(), valores de numero. #Si se pueden convertir a integer los suma try: print "Variables de tipo numero: (suma) ", int(num1)+int(num2) #Si da error muestra lo siguiente except: print "Valores introducidos no convertibles a numero" return
¿es posible desde scripting crear formularios complejos en los que aparezcan datos y fotografías contenidos en BD no espaciales?
Hola, no estoy seguro de poder contestar tu respuesta.. aún así intentaré lo que pueda.
Primero, formularios, no se si sabes que se pueden crear formularios más complejos tanto para introducir como para mostrar información, esto es creando un Dialog en vez de un Script (a la hora de crear uno nuevo seleccionar el type Dialog), lo verás mejor explicado en este video del webinar sobre scripting (en el minuto 20: 30s) http://youtu.be/KEw0zrszSSA?t=20m30s Pronto quiero escribir algún post sobre esto, aún no he tenido tiempo de mirar esta parte del módulo.
Segundo, no estoy seguro sobre poder responderte, pero en principio toda base de datos que puedas conectar con gvSIG, me refiero a en las pestañas del proyecto, en el apartado de tablas, ahí puedes importar bases de datos propias y externas (sin ser espaciales), mientras estén ahí debería de ser posible tratarla desde el módulo de scripting, imagino que como mínimo para obtener y mostrar datos, pero no he hecho ninguna prueba de esto ni estoy seguro, tan solo intento darte alguna idea. Lo mismo, no encuentro opción aún de poder mostrar imágenes en los formularios.
Siento no poder ser de mucha ayuda, gracias por pasarte por el blog, para cualquier otra cosa un placer intentar responderte. Si en algún momento resuelves tu problema, me gustaría si es posible que pasaras por aquí de nuevo y me comentaras como lo has resuelto, estaría encantado en escucharte.