QGraphicsLayoutItem学习记录
furrain 12/12/2021 Qt
# setGraphicsItem
当你继承自QGraphicsLayoutItem和QGraphicsObject或者QGraphicsWidget的时候,构造函数里不要忘记
setGraphicsItem(this);
1
否则,你可能发现没有任何东西显示。
# setParent
QWidget的setParent后,子控件会显示在父控件上,并且父控件析构时,会析构子控件列表里的所有控件。
QGraphicsItem的setParent,也会析构子控件,但是好像并不能让子控件显示在父控件之上。
见setParentItem
# setParentItem
setParentItem后,父控件会把子控件放在显示树中,显示在父控件上
见setPos
# setPos
当控件没有parentItem的时候setPos会定位到scene()中。
当控件有parentItem时,setPos会定位到父控件中。
当父控件移动时,因为setPos定位到父控件中,子控件也会相对一起移动。如果子控件在QGraphicsLauoyt中,默认就setParentItem
https://github.com/suncaiyu/Graph-Link/tree/main/MyNodeGraph