[pyar] [pygtk] Treeviews, button_press_event y .get_selection().get_selected()

N Cis n.cis_92 en hotmail.com
Jue Dic 2 21:06:11 ART 2010


Perdonen mi impaciencia por abrir el tema tan rapido,, despues de varias pruebas pude resolver el problema. Hice que agarre la informacion de la fila despues (cuando se ejecuta la funcion qe se elige en el menu, y no cuando se abre el menu como antes hacia), entoces se fue el delay, copio la parte que cambio, por si a alguno le sirve:


    def popUpMenMenu(self, widget, event, box):
        if event.type == gtk.gdk.BUTTON_PRESS: # Single click
            if event.button == 3: # Right Click - Show popup
                print "Right Click"
                #self.popMenuBuilder(widget, box)
                menu = self.popMenuBuilder(widget, box)
                menu.popup(None, None, None, event.button, event.time)
                #self.menu.popup(None, None, None, event.button, event.time)

    def popMenuBuilder(self, treeView, box):
        menu = gtk.Menu()
        menuItemRes = gtk.MenuItem("Responder")
        menuItemRes.connect('activate', self.popMenuCallb, 'res', treeView)

        menuItemFav = gtk.MenuItem("Favoritos")
        menuItemFav.connect('activate', self.popMenuCallb, 'fav', treeView)

        menuItemAg = gtk.MenuItem("Agegar a Agenda")
        menuItemAg.connect('activate', self.popMenuCallb, 'ag', treeView)

        menuItemBor = gtk.ImageMenuItem( gtk.STOCK_DELETE )
        if box == 'in':
            menuItemBor.connect('activate', self.popMenuCallb, 'borIn', treeView)
        elif box == 'out':
            menuItemBor.connect('activate', self.popMenuCallb, 'borOut', treeView)
        menu.append(menuItemRes)
        menu.append(menuItemFav)
        menu.append(menuItemAg)
        menu.append(menuItemBor)
        menu.show_all()
        return menu

    def popMenuCallb(self, menuitem, action, treeView):
        listStore, lIter = treeView.get_selection().get_selected() # Ahora la informacion se obtiene aca
        name, Oid = listStore.get(lIter, 2, 5)                                  #Problema resuelto :P
        if action == "res":
            self.redactar_ventana(None, name)
        elif action == "fav":
            pass
        elif action == "ag":
            pass
        elif action == "borIn":
            self.__Okeyko.inbox_bor(Oid)
        elif action == "borOut":
            pass
 		 	   		  
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20101202/c65914d6/attachment.html>


More information about the pyar mailing list