[SOLVED] Я хотел бы установить размер для документа QTextEdit (например, 8.5 x 11 или 3 x 5). Если пользователь сжимает представление, тогда появляется горизонтальная полоса прокрутки. Я не могу найти настройки для остановки линии, когда пользователь сжимает представление. Если я полностью остановлю linewrap, все настройки размера страницы будут проигнорированы.QTextEdit не показывает горизонтальную полосу прокрутки при изменении размера
#!/usr/bin/python
#Python version: 3.4.1
#Pyside.__version__ 1.2.2
#PySide.__version_info__ (1, 2, 2, 'final', 0)
#PySide.QtCore.__version__ 4.8.5
#PySide.QtCore.__version_info__ (4, 8, 5)
#PySide.QtCore.qVersion() 4.8.5
# -*- coding: utf-8 -*-
"""
Horizontal Scrollbar test
"""
import sys, os
from PySide.QtCore import QSizeF
from PySide.QtGui import (QApplication, QTextEdit, QTextOption)
class myTextEdit(QTextEdit):
def __init__(self, parent=None):
super(myTextEdit, self).__init__(parent)
self.parent = parent
#FixedWidth disables re-size - NO H-scrollbar will appear
# self.setFixedWidth(500)
#LineWrapMode sets a Maximum line width for wrap, yet
#re-sizing the view wraps text before maximum - NO H-scrollbar appear
self.setLineWrapMode(QTextEdit.FixedColumnWidth)
self.setLineWrapColumnOrWidth(80)
#PageSize sets a Maximum for wrap (same as above) NO H-scrollbar
# pageSize = QSizeF()
# pageSize.setWidth(80)
# self.document().setPageSize(pageSize)
#NoWrap disables all above code. H-bar will show, but line never wraps.
# self.setWordWrapMode(QTextOption.NoWrap)
if __name__ == "__main__":
app = QApplication(sys.argv)
myWidget = myTextEdit()
myWidget.show()
sys.exit(app.exec_())
Пример кода не является реалистичным испытанием, потому что текст-редактировать это окно верхнего уровня и не в макете. – ekhumoro
уже пробовал макет - без разницы –
Макет, безусловно, будет иметь значение. Я не утверждал, что использование одного даст вам то поведение, которое вы хотите: просто это даст более реалистичный пример. В любом случае ни ваш примерный код, ни ваше описание не определяют, что вы пытаетесь сделать. Отключение переноса строк и установка максимальной (не фиксированной) ширины, похоже, удовлетворяют вашим текущим спецификациям, но у меня есть догадка, что на самом деле это не то, что вам нужно. – ekhumoro