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_
メソッドを上書きしますか?