Горизонтальная прокрутка QTextEdit до определенного номера столбца - PullRequest
0 голосов
/ 06 июня 2018

У меня есть QTextEdit и заданный номер столбца, скажем x, я хочу быть рядом для горизонтальной прокрутки (вызывая QTextEdit.horizontalScrollBar().setValue() до значения, такого, что столбец x является первым видимым столбцом вQTextEdit. Есть ли способ сделать это?

Из того, что я видел, QTextEdit.horizontalScrollBar().setValue() принимает значение, представляющее пиксель, а не номер столбца. Так что просто установите значение прокрутки на x hasn 'т работа.

1 Ответ

0 голосов
/ 06 июня 2018

То, что вы предлагаете, работает только для шрифтов фиксированной ширины, я думаю.Итак, предполагая, что это то, что у вас есть, вы можете получить ширину шрифта с помощью QFontMetrics, а затем просто умножить ширину шрифта на желаемый номер столбца.

from PyQt5.QtGui import QFont, QFontMetrics
myfont = QFont("courier", 24)
fm = QFontMetrics(myfont)
f_width = fm.width("A")
QTextEdit.horizontalScrollBar().setValue(f_width * x)
...