title: Scrollable QLabel image in PyQt5
body: <p>I have developed a form in PyQt5. Among other things it has one button, a ScrollArea which contains QLabel to hold pixMap. On click of the button .jpg image would be displayed in the label. Height, width of the image is much bigger than that of QLabel. Image is displayed but scroll bars are not enabled. Here is the image, code and .ui</p>
  
  <p>image </p>
  
  <p><a href="https://i.stack.imgur.com/vOBTI.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/vOBTI.jpg" alt="enter image description here"></a></p>
  
  <pre><code>import sys, PyQt5, os, cv2
  from PyQt5 import QtGui, QtWidgets, QtCore
  from PyQt5.QtWidgets import QDialog
  
  from PIL import Image
  from PIL.ImageQt import ImageQt
  
  from PyQt5.uic import loadUi
  
  
  class photo(QDialog):
      def __init__(self,parent=None):
          super(photo, self).__init__(parent)
          loadUi('EmployeeUpdate.ui', self)
          self.btn.clicked.connect(self.attachImage)
  
      def attachImage(self):
          conImage = Image.open("G:/Data Analytics/Resnsol Face Recognition/a.jpg")
          print(conImage.width,conImage.height)
          pixMap = QtGui.QPixmap.fromImage(ImageQt(conImage))
          self.imageLabel.setPixmap(pixMap)
          #self.imageScrollArea.setGeometry(510, 380, 200, 195)
  
          self.imageScrollArea.setWidgetResizable(True)
  
          self.imageLabel.setAlignment(QtCore.Qt.AlignHCenter | QtCore.Qt.AlignVCenter)
  
  
  def main():
      app = PyQt5.QtWidgets.QApplication(sys.argv)
      window = photo()
      #window.attachImage()
      window.show()
      sys.exit(app.exec_())
  
  if __name__ == '__main__':
      main()
  </code></pre>
  
  <p>.ui file</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;ui version="4.0"&gt;
   &lt;class&gt;Dialog&lt;/class&gt;
   &lt;widget class="QDialog" name="Dialog"&gt;
    &lt;property name="windowModality"&gt;
     &lt;enum&gt;Qt::ApplicationModal&lt;/enum&gt;
    &lt;/property&gt;
    &lt;property name="geometry"&gt;
     &lt;rect&gt;
      &lt;x&gt;0&lt;/x&gt;
      &lt;y&gt;0&lt;/y&gt;
      &lt;width&gt;1265&lt;/width&gt;
      &lt;height&gt;708&lt;/height&gt;
     &lt;/rect&gt;
    &lt;/property&gt;
    &lt;property name="baseSize"&gt;
     &lt;size&gt;
      &lt;width&gt;600&lt;/width&gt;
      &lt;height&gt;600&lt;/height&gt;
     &lt;/size&gt;
    &lt;/property&gt;
    &lt;property name="windowTitle"&gt;
     &lt;string&gt;Employee Update&lt;/string&gt;
    &lt;/property&gt;
    &lt;property name="modal"&gt;
     &lt;bool&gt;true&lt;/bool&gt;
    &lt;/property&gt;
    &lt;widget class="QTableWidget" name="employeeTableWidget"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;10&lt;/x&gt;
       &lt;y&gt;90&lt;/y&gt;
       &lt;width&gt;1241&lt;/width&gt;
       &lt;height&gt;261&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
     &lt;property name="alternatingRowColors"&gt;
      &lt;bool&gt;true&lt;/bool&gt;
     &lt;/property&gt;
     &lt;property name="rowCount"&gt;
      &lt;number&gt;7&lt;/number&gt;
     &lt;/property&gt;
     &lt;property name="columnCount"&gt;
      &lt;number&gt;12&lt;/number&gt;
     &lt;/property&gt;
     &lt;attribute name="horizontalHeaderShowSortIndicator" stdset="0"&gt;
      &lt;bool&gt;true&lt;/bool&gt;
     &lt;/attribute&gt;
     &lt;row/&gt;
     &lt;row/&gt;
     &lt;row/&gt;
     &lt;row/&gt;
     &lt;row/&gt;
     &lt;row/&gt;
     &lt;row/&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;Id&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;First Name&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;Last Name&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;Address1&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;Address2&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;City&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;State&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;Pin&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;Date of Birth&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;Gender&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;Photo&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="toolTip"&gt;
       &lt;string&gt;Click to take photo&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;column&gt;
      &lt;property name="text"&gt;
       &lt;string&gt;Del&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="toolTip"&gt;
       &lt;string&gt;Click to delete record&lt;/string&gt;
      &lt;/property&gt;
      &lt;property name="font"&gt;
       &lt;font&gt;
        &lt;weight&gt;75&lt;/weight&gt;
        &lt;bold&gt;true&lt;/bold&gt;
       &lt;/font&gt;
      &lt;/property&gt;
     &lt;/column&gt;
     &lt;item row="0" column="0"&gt;
      &lt;property name="text"&gt;
       &lt;string/&gt;
      &lt;/property&gt;
     &lt;/item&gt;
    &lt;/widget&gt;
    &lt;widget class="QLabel" name="idLabel"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;20&lt;/x&gt;
       &lt;y&gt;30&lt;/y&gt;
       &lt;width&gt;16&lt;/width&gt;
       &lt;height&gt;16&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
     &lt;property name="text"&gt;
      &lt;string&gt;Id&lt;/string&gt;
     &lt;/property&gt;
    &lt;/widget&gt;
    &lt;widget class="QLineEdit" name="idText"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;40&lt;/x&gt;
       &lt;y&gt;30&lt;/y&gt;
       &lt;width&gt;113&lt;/width&gt;
       &lt;height&gt;20&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
    &lt;/widget&gt;
    &lt;widget class="QLabel" name="firstNameLabel"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;160&lt;/x&gt;
       &lt;y&gt;30&lt;/y&gt;
       &lt;width&gt;51&lt;/width&gt;
       &lt;height&gt;16&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
     &lt;property name="text"&gt;
      &lt;string&gt;First Name&lt;/string&gt;
     &lt;/property&gt;
    &lt;/widget&gt;
    &lt;widget class="QLineEdit" name="firstNameText"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;220&lt;/x&gt;
       &lt;y&gt;30&lt;/y&gt;
       &lt;width&gt;113&lt;/width&gt;
       &lt;height&gt;20&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
    &lt;/widget&gt;
    &lt;widget class="QLabel" name="lastNameLabel"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;340&lt;/x&gt;
       &lt;y&gt;30&lt;/y&gt;
       &lt;width&gt;51&lt;/width&gt;
       &lt;height&gt;16&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
     &lt;property name="text"&gt;
      &lt;string&gt;Last Name&lt;/string&gt;
     &lt;/property&gt;
    &lt;/widget&gt;
    &lt;widget class="QLineEdit" name="lastNameText"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;400&lt;/x&gt;
       &lt;y&gt;30&lt;/y&gt;
       &lt;width&gt;113&lt;/width&gt;
       &lt;height&gt;20&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
     &lt;property name="text"&gt;
      &lt;string&gt;1&lt;/string&gt;
     &lt;/property&gt;
    &lt;/widget&gt;
    &lt;widget class="QPushButton" name="searchButton"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;530&lt;/x&gt;
       &lt;y&gt;30&lt;/y&gt;
       &lt;width&gt;75&lt;/width&gt;
       &lt;height&gt;23&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
     &lt;property name="text"&gt;
      &lt;string&gt;Search&lt;/string&gt;
     &lt;/property&gt;
     &lt;property name="default"&gt;
      &lt;bool&gt;true&lt;/bool&gt;
     &lt;/property&gt;
    &lt;/widget&gt;
    &lt;widget class="QLabel" name="ErrorBar"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;-50&lt;/x&gt;
       &lt;y&gt;620&lt;/y&gt;
       &lt;width&gt;601&lt;/width&gt;
       &lt;height&gt;31&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
     &lt;property name="text"&gt;
      &lt;string/&gt;
     &lt;/property&gt;
     &lt;property name="wordWrap"&gt;
      &lt;bool&gt;true&lt;/bool&gt;
     &lt;/property&gt;
    &lt;/widget&gt;
    &lt;widget class="QScrollArea" name="imageScrollArea"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;120&lt;/x&gt;
       &lt;y&gt;390&lt;/y&gt;
       &lt;width&gt;231&lt;/width&gt;
       &lt;height&gt;171&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
     &lt;property name="verticalScrollBarPolicy"&gt;
      &lt;enum&gt;Qt::ScrollBarAlwaysOn&lt;/enum&gt;
     &lt;/property&gt;
     &lt;property name="horizontalScrollBarPolicy"&gt;
      &lt;enum&gt;Qt::ScrollBarAlwaysOn&lt;/enum&gt;
     &lt;/property&gt;
     &lt;property name="widgetResizable"&gt;
      &lt;bool&gt;true&lt;/bool&gt;
     &lt;/property&gt;
     &lt;widget class="QWidget" name="scrollAreaWidgetContents"&gt;
      &lt;property name="geometry"&gt;
       &lt;rect&gt;
        &lt;x&gt;0&lt;/x&gt;
        &lt;y&gt;0&lt;/y&gt;
        &lt;width&gt;212&lt;/width&gt;
        &lt;height&gt;152&lt;/height&gt;
       &lt;/rect&gt;
      &lt;/property&gt;
      &lt;widget class="QLabel" name="imageLabel"&gt;
       &lt;property name="geometry"&gt;
        &lt;rect&gt;
         &lt;x&gt;0&lt;/x&gt;
         &lt;y&gt;0&lt;/y&gt;
         &lt;width&gt;285&lt;/width&gt;
         &lt;height&gt;171&lt;/height&gt;
        &lt;/rect&gt;
       &lt;/property&gt;
       &lt;property name="autoFillBackground"&gt;
        &lt;bool&gt;false&lt;/bool&gt;
       &lt;/property&gt;
       &lt;property name="styleSheet"&gt;
        &lt;string notr="true"&gt;font: 20pt &amp;quot;MS Shell Dlg 2&amp;quot;;&lt;/string&gt;
       &lt;/property&gt;
       &lt;property name="frameShape"&gt;
        &lt;enum&gt;QFrame::NoFrame&lt;/enum&gt;
       &lt;/property&gt;
       &lt;property name="text"&gt;
        &lt;string/&gt;
       &lt;/property&gt;
       &lt;property name="textFormat"&gt;
        &lt;enum&gt;Qt::AutoText&lt;/enum&gt;
       &lt;/property&gt;
       &lt;property name="scaledContents"&gt;
        &lt;bool&gt;false&lt;/bool&gt;
       &lt;/property&gt;
       &lt;property name="alignment"&gt;
        &lt;set&gt;Qt::AlignCenter&lt;/set&gt;
       &lt;/property&gt;
      &lt;/widget&gt;
     &lt;/widget&gt;
    &lt;/widget&gt;
    &lt;widget class="QPushButton" name="btn"&gt;
     &lt;property name="geometry"&gt;
      &lt;rect&gt;
       &lt;x&gt;20&lt;/x&gt;
       &lt;y&gt;510&lt;/y&gt;
       &lt;width&gt;75&lt;/width&gt;
       &lt;height&gt;23&lt;/height&gt;
      &lt;/rect&gt;
     &lt;/property&gt;
     &lt;property name="text"&gt;
      &lt;string&gt;PushButton&lt;/string&gt;
     &lt;/property&gt;
    &lt;/widget&gt;
   &lt;/widget&gt;
   &lt;tabstops&gt;
    &lt;tabstop&gt;idText&lt;/tabstop&gt;
    &lt;tabstop&gt;firstNameText&lt;/tabstop&gt;
    &lt;tabstop&gt;lastNameText&lt;/tabstop&gt;
    &lt;tabstop&gt;searchButton&lt;/tabstop&gt;
    &lt;tabstop&gt;employeeTableWidget&lt;/tabstop&gt;
   &lt;/tabstops&gt;
   &lt;resources/&gt;
   &lt;connections/&gt;
  &lt;/ui&gt;
  </code></pre>