2012-12-15 42 views
3

​​QtGui.QSyntaxHighlighter將我的QTextEdit小部件中的每一行視爲不同的塊(qtext)。這在我的正則表達式中制動了多行標記,這在我的情況中是一種破壞行爲!我讀了關於setCurrentBlockState()previousBlockState(),但他們沒有真正幫助不打破多線標誌。PyQide Qt QSyntaxHighlighter多行

有沒有簡單的方法來克服這個錯過?如果不是,你會建議作爲最佳方法:

a)擴展QTextEditQDocument將QTextBlock從一行更改爲整個文本。

b)從頭開始使用QTextLayout,QTextFormat等自己的熒光筆。

回答

0

擴展Qt類的問題(沒有被宣稱爲可擴展)是很多方法不是虛擬的,而且大部分的實現都是在private類中完成的。

這使得擴展不容易。所以我會堅持B計劃。