[pyar] duda de pyqt4, abriendo nuevas ventanas
Matias Graña
matias.alejo en gmail.com
Lun Nov 29 10:22:07 ART 2010
> Te recomiendo cargar dinámicamente el .ui, es más fácil no tener que acordarse
> de recompilarlo y cambiás dos líneas de código nomás.
Hecho; el proceso ahora es más sencillo. Se pierde algo de
portabilidad por esto?
>> Con esto funciona tal cual quiero. Muchísimas gracias! Y también
>> muchísimas gracias por la explicación. Ahora me entra la duda: con la
>> excepción funcionaba porque volvía al main loop antes de que el GC
>> molestara? O porque el Traceback se guardaba una referencia a web y
>> entonces el GC no se la llevaba?
>
> Ni idea. Tendría que ver el caso que me estás diciendo.
Es el que había mandado al comienzo. Lo mando de nuevo, un poquito más
limpio con tus sugerencias y re-introduciendo el error de no tener una
referencia de la clase principal a web. En abrir_pagina() hay un
'assert 0==1' que permite ver la ventana de webkit. Si se lo borra, ya
no se alcanza a ver más.
from PyQt4 import QtCore, QtGui, QtWebKit
class Foo(QtGui.QMainWindow):
def __init__(self, parent=None):
QtGui.QMainWindow.__init__(self, parent)
self.setObjectName("MainWindow")
def keyPressEvent(self, event):
key = event.key()
if key == QtCore.Qt.Key_O:
self.abrir_pagina()
def abrir_pagina(self):
web = QtWebKit.QWebView()
web.load(QtCore.QUrl('http://google.com.ar'))
web.show()
assert 0==1
if __name__ == '__main__':
app = QtGui.QApplication([])
foo = Foo()
foo.show()
app.exec_()
More information about the pyar
mailing list