首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pyqtgraph TextItem居中对齐文本

Pyqtgraph TextItem居中对齐文本
EN

Stack Overflow用户
提问于 2020-06-27 03:19:19
回答 1查看 315关注 0票数 1

我正在尝试使用pyqtgraph使文本居中对齐,而不是使用html左对齐。然而,似乎当我使用<div style="text-align: center"></div>时,它似乎没有效果。

代码语言:javascript
复制
import sys
import pyqtgraph as pg
from pyqtgraph.Qt import QtCore, QtGui, QtWidgets

app = QtWidgets.QApplication(sys.argv)

win = QtWidgets.QMainWindow()
gv = pg.GraphicsView()
win.setCentralWidget(gv)
win.show()

text = pg.TextItem(html='<div style="text-align: center">I am on the top<br>bottom</div>',
                  fill=QtGui.QColor(255, 255, 255))
text.setPos(100, 100)
gv.addItem(text)

sys.exit(app.exec_())

给出

底部的文本根本没有居中对齐,例如,当我将<div style="text-align: center"></div>更改为<div style="text-align: right"></div>时,它仍然没有任何作用。我做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-27 04:02:11

如果要设置文本对齐方式,可以使用内部QGraphicsTextItem的文档():

代码语言:javascript
复制
text = pg.TextItem(html='<div>I am on the top<br>bottom</div>',
                  fill=QtGui.QColor(255, 255, 255))

it = text.textItem
option = it.document().defaultTextOption()
option.setAlignment(QtCore.Qt.AlignCenter)
it.document().setDefaultTextOption(option)
it.setTextWidth(it.boundingRect().width())

text.setPos(100, 100)
gv.addItem(text)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62601498

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档