Hola amigos,
Quiero trabajar con Visio desde Visual studio, la razon es que quiero cear un programa en donde pueda crear diagramas unifilares, un diagrama unifilar es un esquema especial para estudios de electricidad, y tal parece q Visio tiene la libreria electrica q necesito, el problema es q la mayoria de los documento q he encontrado para utilizar aplicaciones de Visio en visual estudio son de Visual C# y no de Visual Basic, q es el q yo medio manejo, por eso vengo a consultar si alguien de aqui ha trabajado con Visio desde Visual Basic, o Visual C#, quiero saber q prefieren, porq igual, veo q en internet hay mucha documentacion de Visual C# y me considero capaz de aprender, al menos lo necesario para crear mi proyecto, pero si alguien me puede orientar un poco de como utilizo Visio integrado en una form de visual basic, estaria muy agradecido, les doy un ejemplo de la aplicacion final q no es lo mismo pero da una idea de lo q quiero pues aqui utilizaron forms con aplicaciones de visio pero creo q es desde visual C#, revisenlo por favor: http://msdn.microsoft.com/en-us/magazine/cc164043.aspx
Hola Arturo.
Por lo que he leido en el articulo de MSDN que enlazas, el manejo de Visio se hace mediante un componente ActiveX que envuelve la funcionalidad de la libreria de Visio. Los ejemplos te los dan en C#, pero no tendras ningun problema en poder manejar Visio desde Visual Basic. Entiendo que trabajas con Visual Basic.Net, pero inclusive, podrias manejar estos componentes desde Visual Basic 6.0 sin ningun problema. Al tratarse de componentes ActiveX.
La diferencia entre el ejemplo del articulo, y una versión del mismo programa en Visual Basic.Net seria meramente sintactica. Ya que a las funcionalidades de Visio se acceden mediante los citados componentes ActiveX. Asi que lo que tienes que entender del articulo, es la funcionalidad de dichos componentes y como manejarlos. Posteriormente solo tendrias que instanciar los componentes necesarios y llamar a sus metodos y propiedades desde tu programa Visual Basic.
En definitiva, no veo necesario aprender y/o migrar de un lenguaje de programación a otro. No tienes ninguna necesidad de ello. Salvo, claro esta, quieras aprender C#.
Un saludo
Fidel Ortega
Gracias Fidel, mas o menos lo mismo me hian explicado pero ahora me queda mas clara la idea, si de casualidad tambien conoces como puedo llamar a una componente de estas desde VB t lo agradeceria, tengo VS 2008 pro con la biblioteca msdn premium, no se si estas componentes estan fuera de esa libreria, lo voy a averiguar, solo me gustaria saber como los llamo en caso de ya tenerlos
Hola de nuevo Arturo.
Bien. Para poder utilizar los componentes de Visio, lo que tienes que tener intalado es el propio Visio. Visio en si mismo es una aplicación ActiveX, al igual que Excel o Word. Teniendo el programa instalado, podras instanciarle desde cualquier tu programa.
Si ese paso ya le tenemos dado, lo siguiente que debes hacer es crear una referencia a la libreria ActiveX de Visio desde tu proyecto. Para ello, desde Visual Studio, vas al menu Proyecto (o Sitio Web) -> Agregar Referencia. En el cuadro de dialogo que te aparece, debes seleccionar la solapa COM (es la segunda) y te aparecera una lista de librerias COM/ActiveX instaladas y registradas en tu sistema. Busca la que se corresponda a Visio, ignoro como se llama, pero supongo que sera algo similar a Microsoft Visio X.X Object Library. La seleccionas y pulsas aceptar.
Una vez que tienes la referencia a la libreria en tu proyecto, ya podras crear instancias de los componentes que proporciona la libreria.
Por lo que he podido ver en el codigo de ejemplo que adjunta el articulo que referenciabas de MSDN, dispondras de dos espacios de nombres (namespaces). Microsoft.Office.Interop.Visio y axMicrosoft.Office.Interop.VisOcx. El primer espacio de nombres incluye una serie de componentes llamados Application, Page, Document, Documents (que seguramente sera una colección de objetos de tipo Document) y Window. El segundo espacio de nombres proporciona un componente visual, que se puede incluir visualmente en tu formulario.
Si quieres, por ejemplo, instanciar un componente de tipo Application, lo harias como cualquier tipo de .Net. Ejemplo
Dim documentoVisio As New Microsoft.Interop.Visio.Document
Espero haberte sido de ayuda.
Gracias fidel, tengo visio 2007, y ya consegui la direccion a la q debo comunicarme para acceder a Visio, muchas gracias por tu ayuda! esta a la orden cualquier cosa q vaya consiguiendo, en estos momentos no lo tengo aqui porq no estoy en el trabajo, lo guarde todo en esa computadora, es un poco dificil, hay q tener Visio pero para comunicarse con el de preferencia se debe tener una version completa e instalada junto con todos los demas programas de la misma version de office, pues si no uno no sabe donde buscar la direccion necesaria todo se complica y hay archivos q no aparecen, aparte no debe ser un version de evaluacion, conseguir la libreria si es facil, el problema es hacer el llamado, yo tuve q eliminar el office 2003 completo porq tenia visio 2007, ahora lo tengo todo en 2007 y se entiende mucho mejor! una vez mas gracias, talvez t siga molestando, jeje! y si se puede aportar algo, estoy a la orden!
donde poner que una variable almacene un textbox y que pueda ser llamada desde un form.ACLARACION ESTOY TRABAJANDO EN UN PROGRAMA QUE TIENE UN TOTAL CERCANO A 150 FORM DE LOS CUALES 120 COMPARTEN MUCHOS CODIGOS LA IDEA ES USAR UN MODULO PARA PONER TODOS LOS CODIGOS Y LUEGO LLAMARLOS CON LA SENTENCIA CALL .MI PROBLEMA RESIDE EN QUE EL VB6 NO ME PERMITE TOMAR LOS TEXTBOX DENTRO DEL MODULO AUNQUE LOS DECLARE COMO PUBLICOS PERO SI EL CODIGO EN CONCLUSION DONDE PUEDO PONER UN CODIGO ( variable=text.text)pero que pueda ser llamado mediante call u otro metodo
si alguno me puede dar una mano mi mail es berman_72@hotmail.com sherom