2010-04-21 506 views
0

如何爲QTextEdit/QPlainTextEdit中的每個QTextBlock設置不同的邊距?QTextEdit/QPlainTextEdit中QTextBlock的設置[Left | Right | Top | Bottom]邊距問題

我試着用下面的代碼進行設置:

class MyWidget(QPlainTextEdit): 

    def func(self): 
     block = self.firstVisibleBlock() 
     while block.isValid(): 
      block = block.next() 
      block.blockFormat().setLeftMargin(<some_value>) 

,但它不工作

感謝

+0

保證金是指什麼? 你的意思是寬度?或者是什麼? – Naruto 2010-04-22 06:40:08

+0

段落的價值 – sint 2010-04-22 12:49:42

回答

0

它只能用於QTextEdit,而不用於QPlainTextEDit

+0

任何引用支持?這將解釋很多,但會很高興有這種記錄在某處... – Almar 2017-07-12 21:23:14

+1

@Almar我能找到的最接近的聲明是[this](https://bugreports.qt.io/browse/QTBUG-17460?focusedCommentId= 142419&page = com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-142419),引用來自[here]的Qt文檔(https://doc.qt.io/qt-5/ qplaintextedit.html#分歧到的QTextEdit)。 – 2017-07-26 15:21:49

0

嘗試探索文檔: http://doc.trolltech.com/4.5/qtextblockformat.html 如果您有QTextBlock,那麼你可以使用像這樣的東西:

QTextBlock *block = ...; 
block->blockFormat()->set[Left|Right|Top|Bottom]Margin(qreal margin); 

請讓我們知道它是否有效,因爲我沒有試過這個代碼。

+0

不,我已經試過了,但它並沒有工作 – sint 2010-04-22 08:34:10