2017-08-21 9 views
0

ボタンをクリックしたときに実際に画像を変更するこのコードを記述しました。画像がPyQt4を表示しない

#Make sure you have Winter.jpg image file relative to this script file. 
#Code runs fine in python idle, eric. 


import sys 
from PyQt4 import QtGui 

class Example(QtGui.QWidget): 

    def __init__(self): 
     super(Example, self).__init__() 
     self.initUI() 

    def initUI(self): 
     QtGui.QToolTip.setFont(QtGui.QFont('Test', 10)) 
     self.setToolTip('This is a <b>QWidget</b> widget') 

     # Show image 
     self.pic = QtGui.QLabel(self) 
     self.pic.setGeometry(10, 10, 400, 400) 
     self.pic.setPixmap(QtGui.QPixmap("Picture1.png").scaledToWidth(64)) 


     # Show button 
     btn = QtGui.QPushButton('Button', self) 
     btn.setToolTip('This is a <b>QPushButton</b> widget') 
     btn.resize(btn.sizeHint()) 
     btn.clicked.connect(self.fun) 
     btn.move(50, 50) 


     self.setGeometry(300, 300, 2000, 1500) 
     self.setWindowTitle('Tooltips') 
     self.show() 

    # Connect button to image updating 
    def fun(self): 
     self.pic.setPixmap(QtGui.QPixmap("icon_contribution.png")) 

def main(): 

    app = QtGui.QApplication(sys.argv) 
    ex = Example() 
    sys.exit(app.exec_()) 


if __name__ == '__main__': 
    main() 

Picture 1

写真1

enter image description here

写真2このコードは、罰金を実行し、画像1用の画像を示すが、それは表示されないれる

画像 私は画像2を指定するときには何が問題なのか分かりません。 PyQt4を使って2番目の画像を表示するにはどうすればいいですか?

+0

両方の画像がここに問題なく表示されます。注意すべきことは、Picture 1はPNGで、Picture TwoはJPGです。だから私はおそらくあなたのコード内の拡張子を変更することを忘れていたと思います – jps

+0

私は変更しました。どのようにあなたのために働いていますか?どのようなpythonバージョンを使用していますか? PyQt4を使用していますか? –

+0

@jps私は自分のコードで拡張機能名を変更しました。 –

答えて

0

これは私のコンパイラに問題がありました。私はPyScripterを使ってこの問題を引き起こしました。