<div dir="ltr">OK so I can't make it any simpler than this folks, it MUST be a bug in either Qt 5.7 or PyQt 5.7, please can someone run this and confirm they see the ellipse drawn beyond the graphics view borders, without having to do anything else: <div><br></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div>from PyQt5.QtCore import Qt</div></div><div><div>from PyQt5.QtWidgets import QApplication, QGraphicsView, QGraphicsScene, QHBoxLayout, QWidget, QLabel</div></div><div><div>from PyQt5.QtWidgets import QGraphicsProxyWidget, QGraphicsObject, QGraphicsEllipseItem</div></div><div><div>from PyQt5.QtGui import QBrush</div></div><div><div><br></div></div><div><div><br></div></div><div><div>class MyGraphicsItem(QGraphicsObject):</div></div><div><div><br></div></div><div><div>    def __init__(self):</div></div><div><div>        QGraphicsObject.__init__(self)</div></div><div><div><br></div></div><div><div>        # next line could be any type of graphics item:</div></div><div><div>        rect_item = QGraphicsEllipseItem(0, 0, 100, 100, self)</div></div><div><div>        # effect easier to see if paint black:</div></div><div><div>        rect_item.setBrush(QBrush(Qt.SolidPattern))</div></div><div><div><br></div></div><div><div>        label_item = QGraphicsProxyWidget(self)</div></div><div><div>        # *** Next line must be there for effect to be visible, but could be any other type of widget</div></div><div><div>        label_item.setWidget(QLabel('a'*30))</div></div><div><div><br></div></div><div><div>    def paint(self, painter, option, widget=None):</div></div><div><div>        return</div></div><div><div><br></div></div><div><div>    def boundingRect(self):</div></div><div><div>        return self.childrenBoundingRect()</div></div><div><div><br></div></div><div><div><br></div></div><div><div>def show_problem():</div></div><div><div>    app = QApplication([])</div></div><div><div><br></div></div><div><div>    widget = QWidget()</div></div><div><div>    layout = QHBoxLayout()</div></div><div><div>    widget.setLayout(layout)</div></div><div><div><br></div></div><div><div>    view = QGraphicsView()</div></div><div><div>    scene = QGraphicsScene()</div></div><div><div>    view.setScene(scene)</div></div><div><div><br></div></div><div><div>    scene.addItem(MyGraphicsItem())  # *** effect only there if more than 1 item</div></div><div><div>    scene.addItem(MyGraphicsItem())</div></div><div><div><br></div></div><div><div>    layout.addWidget(view)</div></div><div><div><br></div></div><div><div>    widget.setGeometry(100, 100, 50, 50)</div></div><div><div>    widget.show()</div></div><div><div>    app.exec()</div></div><div><div><br></div></div><div><div><br></div></div><div><div>show_problem()</div></div></blockquote><div><div><br></div><div><br></div><div>The 3 necessary conditions are: </div></div><div><ul><li>more than one MyGraphicsItem instance in the scene (positions don't matter, but they have to stretch partly outside the view)<br></li><li>each instance contains <br></li><ul><li>a proxy widget item (containing any widget, here a label is used)</li><li>a regular item (here a black ellipse is used, effect is then obvious)</li></ul></ul><div>Oliver</div></div><div><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div><font size="2" style="font-size:small">Oliver</font><div style="font-size:small"><font size="1">Open Source contributions: <a href="http://pubsub.sf.net/" style="color:rgb(17,85,204)" target="_blank">PyPubSub</a>,</font><span style="font-size:x-small"> </span><a href="https://github.com/schollii/nose2pytest" style="color:rgb(17,85,204);font-size:x-small" target="_blank">nose2pytest</a><span style="font-size:x-small">,</span><span style="font-size:x-small"> L</span><a href="http://lua-icxx.sf.net/" style="font-size:x-small;color:rgb(17,85,204)" target="_blank">ua-iCxx</a><span style="font-size:x-small">, </span><a href="http://iof.sf.net/" style="font-size:x-small;color:rgb(17,85,204)" target="_blank">iof</a></div><div style="font-size:small"><font size="1"><a href="http://stackoverflow.com/users/869951/schollii" style="color:rgb(17,85,204)" target="_blank">StackOverflow</a> contributions</font></div></div><div><font size="1"><br></font></div><div></div></div></div></div></div></div></div>
<br><div class="gmail_quote">On Thu, Sep 8, 2016 at 1:44 PM, oliver <span dir="ltr"><<a href="mailto:oliver.schoenborn@gmail.com" target="_blank">oliver.schoenborn@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><span class=""><br><div class="gmail_quote">On Thu, Sep 8, 2016 at 1:40 PM, oliver <span dir="ltr"><<a href="mailto:oliver.schoenborn@gmail.com" target="_blank">oliver.schoenborn@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">float pos_x = 33*25*, pos_y = -10;</blockquote></div><br></span>sorry that line should read </div><div class="gmail_extra"><br></div><div class="gmail_extra"><span style="font-size:12.8px">float pos_x = -33 * 25, pos_y = -10 * (rand() / <font color="#000000">float(</font></span><a href="http://www.cplusplus.com/RAND_MAX" style="text-decoration:none;color:rgb(0,0,112);font-family:verdana,arial,helvetica,sans-serif;font-size:12px" target="_blank">RAND_MAX</a>))<span style="font-size:12.8px">;</span></div><div class="gmail_extra"><span style="font-size:12.8px"><br></span></div><div class="gmail_extra"><span style="font-size:12.8px">(the randomness along x is not important)</span></div><span class=""><div class="gmail_extra"><br clear="all"><div><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div><font size="2" style="font-size:small">Oliver</font><div style="font-size:small"><font size="1">Open Source contributions: <a href="http://pubsub.sf.net/" style="color:rgb(17,85,204)" target="_blank">PyPubSub</a>,</font><span style="font-size:x-small"> </span><a href="https://github.com/schollii/nose2pytest" style="color:rgb(17,85,204);font-size:x-small" target="_blank">nose2<wbr>pytest</a><span style="font-size:x-small">,</span><span style="font-size:x-small"> L</span><a href="http://lua-icxx.sf.net/" style="font-size:x-small;color:rgb(17,85,204)" target="_blank">ua-iCxx</a><span style="font-size:x-small">, </span><a href="http://iof.sf.net/" style="font-size:x-small;color:rgb(17,85,204)" target="_blank">iof</a></div><div style="font-size:small"><font size="1"><a href="http://stackoverflow.com/users/869951/schollii" style="color:rgb(17,85,204)" target="_blank">StackOverflow</a> contributions</font></div></div><div><font size="1"><br></font></div><div></div></div></div></div></div></div></div>
</div></span></div>
</blockquote></div><br></div>