我有以下代码使用 pyQt 显示图像:
app = QtGui.QApplication(sys.argv)
window = QtGui.QMainWindow()
window.setGeometry(opts.posx, opts.posy, opts.width, opts.height)
pic = QtGui.QLabel(window)
pic.setGeometry(5, 5, opts.width-10, opts.height-10)
pixmap = QtGui.QPixmap(opts.filename)
pixmap = pixmap.scaledToHeight(opts.height)
pic.setPixmap(pixmap)
window.show()
sys.exit(app.exec_())
我想以类的形式包装这段代码,并能够在运行时设置不同的图像,使用信号、套接字、我真的不知道的线程。我会想象这样的事情:
class MyImage(object):
def __init(self, args):
some setup code
self.pic = whatever
def set_image(self, filename):
pixmap = QtGui.QPixmap(opts.filename)
pixmap = pixmap.scaledToHeight(opts.height)
pic.setPixmap(pixmap)
使用我刚刚调用的原始代码sys.exit(app.exec_())
,这使代码“冻结”。但我想从不同的运行 python 代码发送一个信号(和一个文件名)。有什么建议可以轻松直接地处理吗?也许覆盖app.exec_
方法?