如何在PyQT GUI中显示图像?

时间:2016-06-08 19:31:03

标签: image python-2.7 pyqt4

我想在PyQT中使用filepicker在GUI中显示一个Image。到目前为止,我设法打开图像文件,但完全混淆了如何在GUI中显示图像。

$five_days_history = self::$db->select("SELECT CLOSE, TRADE_DATE
  FROM FF_HISTORICAL_STOCK_PRICE
  WHERE TRADE_DATE >= DATE_SUB(CURDATE(), INTERVAL 5 DAY) AND date <= CURDATE() and SYMBOL='$stock_symbol'
  ORDER BY TRADE_DATE DESC");

请指导我如何在GUI中显示图像。谢谢

2 个答案:

答案 0 :(得分:0)

这个怎么样?

import sys
from PyQt4 import QtGui, QtCore


class Window(QtGui.QMainWindow):
    def __init__(self):
        super(Window, self).__init__()
        self.setGeometry(100, 100, 500, 300)
        self.setWindowTitle("PyQT Show Image")

        openFile = QtGui.QAction("&File", self)
        openFile.setShortcut("Ctrl+O")
        openFile.setStatusTip("Open File")
        openFile.triggered.connect(self.file_open)

        self.statusBar()

        mainMenu = self.menuBar()

        fileMenu = mainMenu.addMenu('&File')
        fileMenu.addAction(openFile)

        self.lbl = QtGui.QLabel(self)
        self.setCentralWidget(self.lbl)

        self.home()

    def home(self):
        self.show()

    def file_open(self):
        name = QtGui.QFileDialog.getOpenFileName(self, 'Open File')

        pixmap = QtGui.QPixmap(name)
        self.lbl.setPixmap(pixmap.scaled(self.lbl.size()))


def run():
    app = QtGui.QApplication(sys.argv)
    GUI = Window()
    sys.exit(app.exec_())

run()

答案 1 :(得分:0)

我已经根据pyQt5更新了代码,因为它对某些人可能会有所帮助。(参考:上文Controlix的代码)

import sys
from PyQt5 import QtGui, QtCore
from PyQt5.QtWidgets import QFileDialog,QLabel,QAction,QMainWindow,QApplication

class Window(QMainWindow):
    def __init__(self):
        super(Window, self).__init__()
        self.setGeometry(100, 100, 500, 300)
        self.setWindowTitle("PyQT Show Image")

        openFile = QAction("&File", self)
        openFile.setShortcut("Ctrl+O")
        openFile.setStatusTip("Open File")
        openFile.triggered.connect(self.file_open)

        self.statusBar()

        mainMenu = self.menuBar()

        fileMenu = mainMenu.addMenu('&File')
        fileMenu.addAction(openFile)

        self.lbl = QLabel(self)
        self.setCentralWidget(self.lbl)

        self.home()

    def home(self):
        self.show()

    def file_open(self):
        name = QFileDialog.getOpenFileName(self, 'Open File')
        print(name)
        pixmap = QtGui.QPixmap(name[0])
        self.lbl.setPixmap(pixmap.scaled(self.lbl.size()))


def run():
    app = QApplication(sys.argv)
    GUI = Window()
    sys.exit(app.exec_())

run()