PyQt6: лучший подход для таблицы с различными интерактивными элементамиPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 PyQt6: лучший подход для таблицы с различными интерактивными элементами

Сообщение Anonymous »

Я изо всех сил пытаюсь найти лучший подход для своего плана по созданию очень специфической таблицы в PyQt, куда вы можете добавлять различные элементы, такие как форматированный текст, изображения или небольшой аудиоплеер. Для преподавателя языка это должна быть таблица для планирования урока, в которой все необходимое будет легко доступно из одного документа. Вот пример того, как это должно выглядеть, которое я сделал в Word:
Изображение

Таблицу можно расширить, и вы можете увидеть первые три элемента, которые я хочу реализовать: редактор форматированного текста, изображения, небольшой аудиоплеер. Вы можете добавить эти элементы как блоки в ячейку, которая ведет себя как список.
Я уже пробовал три подхода:
  • Использование QGridLayout в качестве структуры таблицы и добавление пользовательских виджетов в качестве элементов. Легко реализовать, а поведение изменения размера GridLayout почти идеально подходит для моей таблицы. Я отказался от этой идеи, потому что многие люди указывали на потенциальные проблемы с производительностью.
  • Использование QTableView или QAbstractItemView: мне удалось создать функциональную, но простую таблицу с помощью пользовательских QStyledItemDelegate, но производительность с изображениями была низкой.
  • Использование Graphics Framework с QGraphicsView и QGraphicsGridLayout. Элементом являются QGraphicWidgets . Это должно иметь гораздо лучшую производительность, но я изо всех сил пытаюсь реализовать поведение изменения размера, чтобы оно было таким, как в подходе №. 1.
Так какой же подход лучше всего подходит для такой таблицы? Стоит ли мне пересмотреть один из трех вышеперечисленных подходов или вы предлагаете совсем другой подход?

Подробнее здесь: https://stackoverflow.com/questions/792 ... e-elements
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»