PyQt4:在不滚动的情况下一次在 QTextEdit 中可以看到多少行?
PyQt4: How many lines are visible in QTextEdit at once without scrolling?
我有一个简单的弹出窗口,它只是一个 QTextEdit:
popup = QtGui.QTextEdit()
popup.setMinimumSize(1400, 1000)
popup.show()
我用文字填充。
我需要知道它一次有多少行。
假设我有 1000 行,但由于它的大小,我一次只能看到 X=50,而不能向上或向下滚动。我如何计算 X?
如果 LineWrapMode
设置为 NoWrap
(popup.setLineWrapMode(QTextEdit.NoWrap)
),可见行数可以计算为:
num_lines = popup.height()//popup.fontMetrics().height()
改进@Luchko 的回答:考虑边距更准确:
doc = popup.document()
margin = doc.documentMargin()
num_lines = (doc.size().height() - 2*margin)/popup.fontMetrics().height()
我有一个简单的弹出窗口,它只是一个 QTextEdit:
popup = QtGui.QTextEdit()
popup.setMinimumSize(1400, 1000)
popup.show()
我用文字填充。 我需要知道它一次有多少行。 假设我有 1000 行,但由于它的大小,我一次只能看到 X=50,而不能向上或向下滚动。我如何计算 X?
如果 LineWrapMode
设置为 NoWrap
(popup.setLineWrapMode(QTextEdit.NoWrap)
),可见行数可以计算为:
num_lines = popup.height()//popup.fontMetrics().height()
改进@Luchko 的回答:考虑边距更准确:
doc = popup.document()
margin = doc.documentMargin()
num_lines = (doc.size().height() - 2*margin)/popup.fontMetrics().height()