Python 刷新QWidget
这个问题我已经有很多次了 当我在Python 刷新QWidget,python,qt,python-2.7,pyqt,vtk,Python,Qt,Python 2.7,Pyqt,Vtk,这个问题我已经有很多次了 当我在widget.show()之后修改QWidget的某些属性时,小部件不会更新。大多数情况下,鼠标单击或当鼠标离开或进入小部件时,小部件将被更新。但是,如果我离开鼠标,它将不会自行刷新 到目前为止,我通过以下方式解决了这一问题: widget.hide() widget.show() 但这是一个非常肮脏的修正。有没有更好的方法告诉python刷新小部件 谢谢。要更新小部件,您应该重新绘制()它,但是直接调用重新绘制()不是很好,所以请尝试: widget.upda
widget.show()
之后修改QWidget
的某些属性时,小部件不会更新。大多数情况下,鼠标单击或当鼠标离开或进入小部件时,小部件将被更新。但是,如果我离开鼠标,它将不会自行刷新
到目前为止,我通过以下方式解决了这一问题:
widget.hide()
widget.show()
但这是一个非常肮脏的修正。有没有更好的方法告诉python刷新小部件
谢谢。要更新小部件,您应该
重新绘制()
它,但是直接调用重新绘制()
不是很好,所以请尝试:
widget.update()
此功能不会导致立即重新绘制;相反,它
当Qt返回主视图时,安排绘制事件进行处理
事件循环。这使得Qt能够优化速度,降低成本
比调用repaint()更闪烁
多次调用update()通常只会导致一次
paintEvent()调用
Qt通常在调用paintEvent()之前擦除小部件的区域。如果
设置了Qt::WA_OpaquePaintEvent小部件属性,则小部件为
负责用不透明颜色绘制其所有像素
你已经试过了吗
QWidget.update()
此函数只更新可见部分,保持不可见部分不变。我在小部件的父级上尝试了update(),但它没有执行任何操作。事实上,我刚刚意识到update()只更新小部件,而不更新其子部件。在这个小部件上执行和更新()成功了!因此,如果你的问题解决了,请将一个答案(对你来说最好的)标记为已接受(将这个问题标记为已解决)