Important: Please read the Qt Code of Conduct -

QRect and wrong rectangle coordinates

  • Hi,

    Currently using QT 5.15 and reading Qrect, I just want to make sure of one thing:

    QRect a(0,100,50,-50);

    yields (for topLeft, topRight, bottomRight, bottomLeft):

    QPoint(0,100)   QPoint(49,100)   QPoint(49,49)   QPoint(0,49)

    Which is correct (don't care about the -1)

    But if I do

    QRect a(0,100,50,50);

    it yields

    QPoint(0,100)   QPoint(49,100)   QPoint(49,149)   QPoint(0,149)

    Which is not logical since the topLeft is below the bottomLeft !
    So to be correct in all cases (rotation included), should I enforce the minus ? Or will another surprise arise?


  • What are you talking about?
    QPoint(0,149) is below QPoint(0,100) because the GUI coordinate system looks like this:
    (picture is from:

  • Missed that info. Everything is alright. thanks!

  • I want to add that the documentation of QRect reads different from your assumption: The consturctor which takes 4 int arguments assums "width" and "height" as last arguments. These are no point coordinates.

    QRect(int x, int y, int width, int height)

Log in to reply