python - 在pyqtgraph中动态旋转TextItem
问题描述
我想动态旋转 TextItem 但不能让它工作。使用 setPos 和 setAnchor 更改位置或锚点会更新项目,但想要使用 setAngle 更改 angel 不会更新文本。最奇怪的是,一旦我拖动画布,它就会更新。
from pyqtgraph.Qt import QtCore, QtGui
import pyqtgraph as pg
app = QtGui.QApplication([])
w = pg.GraphicsView()
w.show()
w.resize(800,800)
view = pg.ViewBox()
w.setCentralItem(view)
view.setAspectLocked(True)
view.setRange(QtCore.QRectF(0, 0, 200, 200))
anchor = pg.TextItem()
anchor.setText("hey")
anchor.setColor(QtGui.QColor(255, 255, 255))
view.addItem(anchor)
def rotate():
x, y = anchor.pos()
anchor.setPos(x + 1, y + 1)
anchor.setAngle(anchor.angle + 10)
timer = QtCore.QTimer()
timer.timeout.connect(rotate)
timer.start(1000)
if __name__ == '__main__':
import sys
if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
QtGui.QApplication.instance().exec_()
我想知道要调用什么信号或函数以使项目立即更新。
解决方案
它最终成为一个错误。我通过删除旧的TextItem
并使用更新角度创建一个新的来解决它。
推荐阅读
- mongodb - MongoDB 阶段 LIMIT_SKIP
- apache-spark - 如何并行执行解压缩(pyspark)
- leaflet - 如何将 www.educationcounts.govt.nz 中的区域数据嵌入到我自己的 Leaflet 地图中?
- linux - 为什么不同机器上处理的请求/秒不同:Nginx 负载均衡器 + Python Twisted Server
- angular - Angular ERROR TypeError:无法设置未定义的属性“名称”
- unit-testing - 用 Jest 测试 exceljs(第三方模块)
- python - 按字母顺序查找最长的子串(需要逻辑建议)
- html - 创建一个包含圆形按钮的矩形,该按钮根据矩形的大小调整大小
- java - Apache Http Client 4.5.11 生产环境配置最佳实践
- python - Python exe太慢了