-   
- #!/usr/bin/env python 
- #_*_ coding: utf-8 _*_ 
- #file: Propiedades_Tk1.py 
- #Propiedades 
-   
- import Tkinter 
- import win32com.client 
- from win32com.client import gencache 
- oApp = win32com.client.Dispatch('Inventor.Application') 
- oApp.Visible = True 
- mod = gencache.EnsureModule('{D98A091D-3A0F-4C3E-B36E-61F62068D488}',0,1,0) 
- oApp = mod.Application(oApp) 
- oApp.SilentOperation = True 
- oDoc = oApp.ActiveDocument 
- prop = oApp.ActiveDocument.PropertySets.Item("Design Tracking Properties") 
- Descrip = prop('Description').Value 
- Disenador = prop('Designer').Value 
-   
- class Inventor_tk(Tkinter.Tk): 
-      
-      def __init__(self,parent): 
-         Tkinter.Tk.__init__(self,parent) 
-         self.parent = parent 
-         self.initialize() 
-   
-      def initialize(self): 
-         self.grid() 
-          
-         #Boton actulizar propiedades 
-         button = Tkinter.Button(self, text= u"Nueva Pieza", command=self.UpdatePropiedad) 
-         button.grid(column=4, row=5) 
-   
-         #Descripcion         
-         labelDescrip = Tkinter.Label(self, text= "Descripcion: ") 
-         labelDescrip.grid(column=1, row=2) 
-         labelDescrip.grid(column=1, row= 2,sticky='W'+'E') 
-   
-         DescripEntry = Tkinter.StringVar() 
-         DescripEntry.set (Descrip) 
-                          
-   
-         EntryDescrip = Tkinter.Entry(self, textvariable=DescripEntry) 
-         #EntryDescrip.bind("<Return>", self.UpdatePropiedad) 
-         EntryDescrip.grid(column=2,  row= 2,sticky='W'+'E') 
-   
-         global NuevaDesc 
-         NuevaDesc = EntryDescrip.get() 
-   
-         #Diseñador         
-         labelDesing = Tkinter.Label(self, text= u"Diseñador: ") 
-         labelDesing.grid(column=1, row=3) 
-         labelDesing.grid(column=1, row= 3,sticky='W'+'E') 
-          
-         DesingEntry = Tkinter.StringVar() 
-         DesingEntry.set (Disenador) 
-          
-         EntryDesign = Tkinter.Entry(self, textvariable=DesingEntry) 
-         #EntryDesign.bind("<Return>", self.UpdatePropiedad) 
-         EntryDesign.grid(column=2,  row= 3,sticky='W'+'E') 
-          
-   
-         global NuevoDiseno 
-         NuevoDiseno = EntryDesign.get() 
-   
-                  
-      def UpdatePropiedad(self): 
-         ### 
-         ###Fallo pierde valor de las variables, intentar corregir 
-         ###  
-          
-         Descrip = prop ('Description').Value = NuevaDesc 
-         Disenador = prop ('Designer').Value = NuevoDiseno 
-         print Descrip 
-         print Disenador 
-         #Actualiza documento 
-         oDoc.Update 
-          
- if __name__ == "__main__": 
-     app = Inventor_tk(None) 
-     app.title('Propiedades de: '+ oApp.ActiveDocument.DisplayName) 
-     app.mainloop() 
-   
-