2017-07-28 34 views

回答

1

答案是肯定有,

嘗試這樣的事:

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_()) 

你有很多其他propertiesexamples,你可以去看看。


還有一些其他的辦法,其中之一是不是利用樣式表可以設置「HTML」其qdocumentproperties,有這樣的事情:

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) 
+0

還有一件事。如何得到stylesheet.I的意思是在QTextchar格式中,你會做類似print的格式format.fontItalic() –

+0

我不知道它是否正是你想要的,但在設置樣式表後,你可以訪問它使用的屬性'self.text_edit.styleSheet()',它會返回一個帶有這些屬性的字符串。或者你可以創建類似'self.text_edit.font()'的東西,它會返回一個'QFont'對象,從那裏你可以擁有'pointSize',以及'QFont'中的許多其他屬性。不僅可以使用'QFont()',而且可以訪問它的'QColor','QBrush'等等。它有幫助還是不是你想要的? – yurisnm

+0

正是我想要的,我將使用索引感謝 –

相關問題