Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt for Python
  4. Draw a rectangle over an image
Forum Updated to NodeBB v4.3 + New Features

Draw a rectangle over an image

Scheduled Pinned Locked Moved Solved Qt for Python
27 Posts 5 Posters 7.4k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    john_hobbyist
    wrote on last edited by
    #3

    I have built it in python. I will try to translate the above code (I think it is C++ ) to python and respond to you if it works...Thanks!

    KroMignonK 1 Reply Last reply
    0
    • J john_hobbyist

      I have built it in python. I will try to translate the above code (I think it is C++ ) to python and respond to you if it works...Thanks!

      KroMignonK Offline
      KroMignonK Offline
      KroMignon
      wrote on last edited by
      #4

      @john_hobbyist said in Draw a rectangle over an image:

      I have built it in python. I will try to translate the above code (I think it is C++ ) to python and respond to you if it works...Thanks!

      This no C++ code, it is QML!!!

      It is an old maxim of mine that when you have excluded the impossible, whatever remains, however improbable, must be the truth. (Sherlock Holmes)

      1 Reply Last reply
      1
      • MarkkyboyM Offline
        MarkkyboyM Offline
        Markkyboy
        wrote on last edited by
        #5

        Code updated @john_hobbyist - sorry, didn't read the part about python!....Oops!, speed reading again!

        Don't just sit there standing around, pick up a shovel and sweep up!

        I live by the sea, not in it.

        J 1 Reply Last reply
        1
        • MarkkyboyM Markkyboy

          Code updated @john_hobbyist - sorry, didn't read the part about python!....Oops!, speed reading again!

          J Offline
          J Offline
          john_hobbyist
          wrote on last edited by
          #6

          @Markkyboy Sorry I do not know QML, moreover I have posted the question under "python" category...Thanks for your time though...

          1 Reply Last reply
          0
          • SGaistS Offline
            SGaistS Offline
            SGaist
            Lifetime Qt Champion
            wrote on last edited by
            #7

            Hi,

            From memory: use a green QPen and a transparent QBrush.

            Interested in AI ? www.idiap.ch
            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

            1 Reply Last reply
            2
            • J Offline
              J Offline
              john_hobbyist
              wrote on last edited by john_hobbyist
              #8

              This is my try (source: https://stackoverflow.com/questions/61034583/drawing-a-circle-on-a-qwidget-python-gui and https://codeloop.org/pyqt5-drawing-rectangle-with-qpainter-class/). I cannot display the image and then above the image the green transparent rectangle...It depicts only the green rectangle and nothing behind...Why?

              from PyQt5 import QtGui
              import sys
              from PyQt5.QtWidgets import *
              from PyQt5.QtCore import *
              from PyQt5.QtGui import *
               
              class Canvas(QWidget): 
                  def __init__(self, photo, *args, **kwargs): 
                      super().__init__(*args, **kwargs) 
                      
                      self.image = QImage(photo)
                      self.setFixedSize(self.image.width(), self.image.height())
                      self.pressed = self.moving = False
                      self.revisions = []
               
                      self.title = "PyQt5 Drawing Rectangle"
                      self.top = 100
                      self.left = 100
                      self.width = 680
                      self.height = 500
               
                      self.InitWindow()
               
                  def InitWindow(self):
                      self.setWindowIcon(QtGui.QIcon("icon.png"))
                      self.setWindowTitle(self.title)
                      self.setGeometry(self.top, self.left, self.width, self.height)
                      self.show()
               
                  def paintEvent(self, e):
                      painter = QPainter(self)
                      painter.setPen(QPen(Qt.green, 5, Qt.SolidLine))
                      painter.setBrush(QBrush(Qt.transparent))
                      painter.drawRect(100, 150, 400,200)
              
              class MainWindow(QMainWindow):
              
                  def __init__(self):
                      super().__init__()
                      w = QWidget()
                      self.setCentralWidget(w)
                      canvas = Canvas('image3.png') 
                      grid = QGridLayout(w)
                      grid.addWidget(canvas)
              
              if __name__ == '__main__':
                  app = QApplication(sys.argv)
                  gui = MainWindow()
                  gui.show()
                  sys.exit(app.exec_())
              
              1 Reply Last reply
              0
              • SGaistS Offline
                SGaistS Offline
                SGaist
                Lifetime Qt Champion
                wrote on last edited by
                #9

                Because your are doing nothing with the image beside loading it and you are painting your rectangle in your widget and not on your image.

                Interested in AI ? www.idiap.ch
                Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                J 1 Reply Last reply
                1
                • SGaistS SGaist

                  Because your are doing nothing with the image beside loading it and you are painting your rectangle in your widget and not on your image.

                  J Offline
                  J Offline
                  john_hobbyist
                  wrote on last edited by
                  #10

                  @SGaist Ok, what to add/fix in the code? Thanks...

                  1 Reply Last reply
                  0
                  • SGaistS Offline
                    SGaistS Offline
                    SGaist
                    Lifetime Qt Champion
                    wrote on last edited by
                    #11

                    Paint the image before the rectangle.

                    Interested in AI ? www.idiap.ch
                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                    J 1 Reply Last reply
                    1
                    • SGaistS SGaist

                      Paint the image before the rectangle.

                      J Offline
                      J Offline
                      john_hobbyist
                      wrote on last edited by john_hobbyist
                      #12

                      I have added this command:

                      painter.drawImage(photo)
                      

                      under:

                      painter = QPainter(self)
                      

                      Nothing works...I don't see neither the photo, nor the rectangle... Any idea?

                      1 Reply Last reply
                      0
                      • J Offline
                        J Offline
                        john_hobbyist
                        wrote on last edited by
                        #13

                        I did some other tests, nothing...

                        1 Reply Last reply
                        0
                        • SGaistS Offline
                          SGaistS Offline
                          SGaist
                          Lifetime Qt Champion
                          wrote on last edited by
                          #14

                          Except that photo is passed only in your __init__ method.

                          Please provide your code rather than lines without context stating that it does not work.

                          Interested in AI ? www.idiap.ch
                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                          1 Reply Last reply
                          0
                          • J Offline
                            J Offline
                            john_hobbyist
                            wrote on last edited by john_hobbyist
                            #15

                            @SGaist Yes, sorry! Here it does not show anything... (source: https://stackoverflow.com/questions/61034583/drawing-a-circle-on-a-qwidget-python-gui and https://codeloop.org/pyqt5-drawing-rectangle-with-qpainter-class/)

                            from PyQt5 import QtGui
                            import sys
                            from PyQt5.QtWidgets import *
                            from PyQt5.QtCore import *
                            from PyQt5.QtGui import *
                             
                            class Canvas(QWidget): 
                                def __init__(self, photo, *args, **kwargs): 
                                    super().__init__(*args, **kwargs) 
                                    
                                    self.image = QImage(photo)
                                    self.setFixedSize(self.image.width(), self.image.height())
                                    self.pressed = self.moving = False
                                    self.revisions = []
                             
                                    self.title = "PyQt5 Drawing Rectangle"
                                    self.top = 100
                                    self.left = 100
                                    self.width = 680
                                    self.height = 500
                             
                                    self.InitWindow()
                             
                                def InitWindow(self):
                                    self.setWindowIcon(QtGui.QIcon("icon.png"))
                                    self.setWindowTitle(self.title)
                                    self.setGeometry(self.top, self.left, self.width, self.height)
                                    self.show()
                            
                                def paintEvent(self, e):
                                    painter = QPainter(self)
                                    painter.drawImage(photo)
                                    painter.setPen(QPen(Qt.green, 5, Qt.SolidLine))
                                    painter.setBrush(QBrush(Qt.transparent))
                                    painter.drawRect(100, 150, 400,200)
                            
                            class MainWindow(QMainWindow):
                            
                                def __init__(self):
                                    super().__init__()
                                    w = QWidget()
                                    self.setCentralWidget(w)
                                    canvas = Canvas('image3.png') 
                                    grid = QGridLayout(w)
                                    grid.addWidget(canvas)
                            
                            if __name__ == '__main__':
                                app = QApplication(sys.argv)
                                gui = MainWindow()
                                gui.show()
                                sys.exit(app.exec_())
                            
                            1 Reply Last reply
                            0
                            • SGaistS Offline
                              SGaistS Offline
                              SGaist
                              Lifetime Qt Champion
                              wrote on last edited by
                              #16

                              And that code runs without triggering an exception ?
                              "photo" is unknown in your paintEvent. You should draw "self.image".

                              Interested in AI ? www.idiap.ch
                              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                              J 1 Reply Last reply
                              0
                              • SGaistS SGaist

                                And that code runs without triggering an exception ?
                                "photo" is unknown in your paintEvent. You should draw "self.image".

                                J Offline
                                J Offline
                                john_hobbyist
                                wrote on last edited by
                                #17

                                @SGaist If you mean: "painter.drawImage(self.image)" I see neither the image nor the rectangle and many errors...

                                jsulmJ 1 Reply Last reply
                                0
                                • J john_hobbyist

                                  @SGaist If you mean: "painter.drawImage(self.image)" I see neither the image nor the rectangle and many errors...

                                  jsulmJ Online
                                  jsulmJ Online
                                  jsulm
                                  Lifetime Qt Champion
                                  wrote on last edited by
                                  #18

                                  @john_hobbyist said in Draw a rectangle over an image:

                                  many errors

                                  Would be nice if you would let us know what errors...

                                  https://forum.qt.io/topic/113070/qt-code-of-conduct

                                  1 Reply Last reply
                                  0
                                  • J Offline
                                    J Offline
                                    john_hobbyist
                                    wrote on last edited by john_hobbyist
                                    #19

                                    @jsulm Yes, of course! The code is this (for source see my previous messages...):

                                    from PyQt5 import QtGui
                                    import sys
                                    from PyQt5.QtWidgets import *
                                    from PyQt5.QtCore import *
                                    from PyQt5.QtGui import *
                                     
                                    class Canvas(QWidget): 
                                        def __init__(self, photo, *args, **kwargs): 
                                            super().__init__(*args, **kwargs) 
                                            
                                            self.image = QImage(photo)
                                            self.setFixedSize(self.image.width(), self.image.height())
                                            self.pressed = self.moving = False
                                            self.revisions = []
                                     
                                            self.title = "PyQt5 Drawing Rectangle"
                                            self.top = 100
                                            self.left = 100
                                            self.width = 680
                                            self.height = 500
                                     
                                            self.InitWindow()
                                     
                                        def InitWindow(self):
                                            self.setWindowIcon(QtGui.QIcon("icon.png"))
                                            self.setWindowTitle(self.title)
                                            self.setGeometry(self.top, self.left, self.width, self.height)
                                            self.show()
                                    
                                        def paintEvent(self, e):
                                            painter = QPainter(self)
                                            painter.drawImage(self.image)
                                            painter.setPen(QPen(Qt.green, 5, Qt.SolidLine))
                                            painter.setBrush(QBrush(Qt.transparent))
                                            painter.drawRect(100, 150, 400,200)
                                    
                                    class MainWindow(QMainWindow):
                                    
                                        def __init__(self):
                                            super().__init__()
                                            w = QWidget()
                                            self.setCentralWidget(w)
                                            canvas = Canvas('image3.png') 
                                            grid = QGridLayout(w)
                                            grid.addWidget(canvas)
                                    
                                    if __name__ == '__main__':
                                        app = QApplication(sys.argv)
                                        gui = MainWindow()
                                        gui.show()
                                        sys.exit(app.exec_())
                                    

                                    The errors are these:

                                    Traceback (most recent call last):
                                      File "draw_fixed_rectangle_with_image.py", line 32, in paintEvent
                                        painter.drawImage(self.image)
                                    TypeError: arguments did not match any overloaded call:
                                      drawImage(self, QRectF, QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QRect, QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, Union[QPointF, QPoint], QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QPoint, QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, int, int, QImage, sx: int = 0, sy: int = 0, sw: int = -1, sh: int = -1, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QRectF, QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QRect, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, Union[QPointF, QPoint], QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QPoint, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                    QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
                                    Traceback (most recent call last):
                                      File "draw_fixed_rectangle_with_image.py", line 32, in paintEvent
                                        painter.drawImage(self.image)
                                    TypeError: arguments did not match any overloaded call:
                                      drawImage(self, QRectF, QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QRect, QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, Union[QPointF, QPoint], QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QPoint, QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, int, int, QImage, sx: int = 0, sy: int = 0, sw: int = -1, sh: int = -1, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QRectF, QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QRect, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, Union[QPointF, QPoint], QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QPoint, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                    Traceback (most recent call last):
                                      File "draw_fixed_rectangle_with_image.py", line 32, in paintEvent
                                        painter.drawImage(self.image)
                                    TypeError: arguments did not match any overloaded call:
                                      drawImage(self, QRectF, QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QRect, QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, Union[QPointF, QPoint], QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QPoint, QImage): argument 1 has unexpected type 'QImage'
                                      drawImage(self, int, int, QImage, sx: int = 0, sy: int = 0, sw: int = -1, sh: int = -1, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QRectF, QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QRect, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, Union[QPointF, QPoint], QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      drawImage(self, QPoint, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                    QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
                                    QPaintDevice: Cannot destroy paint device that is being painted
                                    
                                    
                                    jsulmJ 1 Reply Last reply
                                    0
                                    • J john_hobbyist

                                      @jsulm Yes, of course! The code is this (for source see my previous messages...):

                                      from PyQt5 import QtGui
                                      import sys
                                      from PyQt5.QtWidgets import *
                                      from PyQt5.QtCore import *
                                      from PyQt5.QtGui import *
                                       
                                      class Canvas(QWidget): 
                                          def __init__(self, photo, *args, **kwargs): 
                                              super().__init__(*args, **kwargs) 
                                              
                                              self.image = QImage(photo)
                                              self.setFixedSize(self.image.width(), self.image.height())
                                              self.pressed = self.moving = False
                                              self.revisions = []
                                       
                                              self.title = "PyQt5 Drawing Rectangle"
                                              self.top = 100
                                              self.left = 100
                                              self.width = 680
                                              self.height = 500
                                       
                                              self.InitWindow()
                                       
                                          def InitWindow(self):
                                              self.setWindowIcon(QtGui.QIcon("icon.png"))
                                              self.setWindowTitle(self.title)
                                              self.setGeometry(self.top, self.left, self.width, self.height)
                                              self.show()
                                      
                                          def paintEvent(self, e):
                                              painter = QPainter(self)
                                              painter.drawImage(self.image)
                                              painter.setPen(QPen(Qt.green, 5, Qt.SolidLine))
                                              painter.setBrush(QBrush(Qt.transparent))
                                              painter.drawRect(100, 150, 400,200)
                                      
                                      class MainWindow(QMainWindow):
                                      
                                          def __init__(self):
                                              super().__init__()
                                              w = QWidget()
                                              self.setCentralWidget(w)
                                              canvas = Canvas('image3.png') 
                                              grid = QGridLayout(w)
                                              grid.addWidget(canvas)
                                      
                                      if __name__ == '__main__':
                                          app = QApplication(sys.argv)
                                          gui = MainWindow()
                                          gui.show()
                                          sys.exit(app.exec_())
                                      

                                      The errors are these:

                                      Traceback (most recent call last):
                                        File "draw_fixed_rectangle_with_image.py", line 32, in paintEvent
                                          painter.drawImage(self.image)
                                      TypeError: arguments did not match any overloaded call:
                                        drawImage(self, QRectF, QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QRect, QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, Union[QPointF, QPoint], QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QPoint, QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, int, int, QImage, sx: int = 0, sy: int = 0, sw: int = -1, sh: int = -1, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QRectF, QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QRect, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, Union[QPointF, QPoint], QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QPoint, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
                                      Traceback (most recent call last):
                                        File "draw_fixed_rectangle_with_image.py", line 32, in paintEvent
                                          painter.drawImage(self.image)
                                      TypeError: arguments did not match any overloaded call:
                                        drawImage(self, QRectF, QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QRect, QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, Union[QPointF, QPoint], QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QPoint, QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, int, int, QImage, sx: int = 0, sy: int = 0, sw: int = -1, sh: int = -1, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QRectF, QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QRect, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, Union[QPointF, QPoint], QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QPoint, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      Traceback (most recent call last):
                                        File "draw_fixed_rectangle_with_image.py", line 32, in paintEvent
                                          painter.drawImage(self.image)
                                      TypeError: arguments did not match any overloaded call:
                                        drawImage(self, QRectF, QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QRect, QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, Union[QPointF, QPoint], QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QPoint, QImage): argument 1 has unexpected type 'QImage'
                                        drawImage(self, int, int, QImage, sx: int = 0, sy: int = 0, sw: int = -1, sh: int = -1, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QRectF, QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QRect, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, Union[QPointF, QPoint], QImage, QRectF, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                        drawImage(self, QPoint, QImage, QRect, flags: Union[Qt.ImageConversionFlags, Qt.ImageConversionFlag] = Qt.ImageConversionFlag.AutoColor): argument 1 has unexpected type 'QImage'
                                      QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
                                      QPaintDevice: Cannot destroy paint device that is being painted
                                      
                                      
                                      jsulmJ Online
                                      jsulmJ Online
                                      jsulm
                                      Lifetime Qt Champion
                                      wrote on last edited by jsulm
                                      #20

                                      @john_hobbyist Please take a look at documentation: https://doc.qt.io/qt-5/qpainter.html
                                      What are drawImage() parameters? And what do you pass to it? It is quite apparent what you are doing wrong even from the error message itself:

                                      drawImage(self, QRectF, QImage): argument 1 has unexpected type 'QImage'
                                      

                                      https://forum.qt.io/topic/113070/qt-code-of-conduct

                                      1 Reply Last reply
                                      2
                                      • SGaistS Offline
                                        SGaistS Offline
                                        SGaist
                                        Lifetime Qt Champion
                                        wrote on last edited by
                                        #21

                                        The error is pretty explicit. There's no overload of drawImage that takes only a QImage as parameter. It's always the second one.

                                        Interested in AI ? www.idiap.ch
                                        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                        1 Reply Last reply
                                        1
                                        • J Offline
                                          J Offline
                                          john_hobbyist
                                          wrote on last edited by
                                          #22

                                          Thank you all for your time and your significant comments! I mark it as "Solved!"

                                          1 Reply Last reply
                                          0

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved