【发布时间】:2018-01-04 19:18:39
【问题描述】:
我知道 PyQt QTextChar 格式有字体上划线属性但是 pyqt textedit
只有斜体、粗体和下划线。textEdit 字体是否存在上划线??
那么语法是什么?
【问题讨论】:
标签: python-2.7 python-3.x pyqt pyqt4 pyqt5
我知道 PyQt QTextChar 格式有字体上划线属性但是 pyqt textedit
只有斜体、粗体和下划线。textEdit 字体是否存在上划线??
那么语法是什么?
【问题讨论】:
标签: python-2.7 python-3.x pyqt pyqt4 pyqt5
答案是肯定的,
试试这样的:
import sys
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWidgets import QTextEdit
from PyQt5.QtWidgets import QVBoxLayout
from PyQt5.QtWidgets import QWidget
class Widget(QWidget):
def __init__(self):
super(Widget, self).__init__()
self.text_edit = QTextEdit("Overlining...")
self.text_edit.setStyleSheet("""
text-decoration: overline;
""")
self.layout = QVBoxLayout()
self.setLayout(self.layout)
self.layout.addWidget(self.text_edit)
if __name__ == '__main__':
app = QApplication(sys.argv)
wid = Widget()
wid.show()
sys.exit(app.exec_())
你还有很多其他的properties和examples可以看看。
还有其他一些方法,其中一种方法是不使用样式表,而是可以设置其qdocument 的“html”properties,如下所示:
self.text_edit = QTextEdit()
personalized_document = QTextDocument()
personalized_document.set...#set all you need for example the overline you need.
self.text_edit.setDocument(personalized_document)
【讨论】:
self.text_edit.styleSheet() 访问它所具有的属性,它会返回一个包含这些属性的字符串。或者你可以制作类似self.text_edit.font() 的东西,它会返回一个QFont 对象,从那里你可以拥有pointSize,以及来自QFont 的许多其他属性。不仅是QFont(),您还可以访问它的QColor、QBrush 和许多其他人。它有帮助还是不是您愿意弄清楚的?