1

以下に投稿されたコードはQTextBrowser、100 行のテキストで埋め尽くすウィンドウを作成しMESSAGE-0000ます。MESSAGE-0099

ここに画像の説明を入力

from PyQt4 import QtCore, QtGui
app=QtGui.QApplication([])

textBrowser = QtGui.QTextBrowser()
for i in range(100):
    textBrowser.insertPlainText('MESSAGE-%04d'%i + '\n')

textBrowser.show()
app.exec_()

質問: テキストに次のような行番号を見つける方法:MESSAGE-0051を選択または強調表示し、スクロールして、selected-highlightet 行がQTextBrowserウィンドウの上端に配置されるようにします。結果は次のようになります。

ここに画像の説明を入力

それを達成する方法は?

4

1 に答える 1

0

逆方向に検索すると、選択した行がビューポートの上部に自動的にスクロールされます。

textBrowser.moveCursor(QtGui.QTextCursor.End)
textBrowser.find('MESSAGE-0051', QtGui.QTextDocument.FindBackward)

(もちろん、たとえば を検索すると、MESSAGE-0095ビューがそこまでスクロールできないため、選択した行が一番上に表示されません)。

于 2017-01-07T02:17:27.103 に答える