PySide QGraphicsTextItem проблемы
Я пытаюсь создать текстовый редактор, похожий на слово (paginated) в PySide.
Для решения этой проблемы я решил использовать QGraphicsScene с QGraphicsTextItem для каждой страницы и кодировать фокус с помощью взаимодействия.
Теперь все, что я сейчас пытаюсь сделать, - это иметь поле, представляющее страницу A4, и обрабатывать события с измененным текстом, используя функцию QGraphicsTextItem.document(). PageCount().
Я столкнулся с несколькими проблемами:
Как я могу правильно определить размер страницы, если QSizeF не использует какие-либо единицы измерения? Гарантирует ли определение этого права истинное возвращаемое значение из pageCount()?
Если я вообще определю pageSize, QGraphicsTextItem перестанет расширяться. Как я могу установить фиксированный размер, чтобы он выглядел как страница?
Документация для Qt очень легкая, и я ничего не могу понять из этого.
Спасибо за помощь
2 ответа
Хотя есть четкие вопросы, ответы в значительной степени зависят от всего вашего кода и того, что именно вы хотите достичь. Я бы порекомендовал вам прочитать эту КНИГУ, потому что в ней блестящие объяснения о Python и Qt.
В главе 12 вы можете найти объяснения ваших проблем, а также возникших проблем. В подразделе "Пользовательские и интерактивные графические элементы" автор кодирует пример приложения, аналогичного вашему.
из книги о размере страницы:
PageSize = (612, 792)
PointSize = 10
MagicNumber = 0x70616765
FileVersion = 1
Dirty = False
Начиная с Qt 5.3,
QPageSize
есть все необходимое, чтобы узнать размеры страницы в любых единицах измерения.