Реализация графического дизайнера

Я заинтересован в создании собственного небольшого графического дизайнера для обучения в Qt. Просто базовое перетаскивание с левой панели, которая будет иметь элементы управления, на правую панель, на которой они могут быть выделены, перемещены, изменены размеры и изменены их свойства (имя и т. Д.) И в конечном итоге (если выбран) выстроены в линию.

Я бы использовал QGraphicsScene в качестве правой панели, потому что в нем уже реализован выбор и перемещение. Но как бы я внедрил изменение размера? И как тогда сгенерировать класс QWidget с элементами управления в тех же позициях? Или есть более простой способ?

Как лучше всего реализовать все это? Все предложения приветствуются и имейте в виду, что он не будет сложным в качестве дизайнера Qt.

0

Решение

Вам нужно определить некоторые виджеты, которые будут перетаскиваться с левой панели — может быть в виде дерева с иконками — и выбрасываться на сцену.

Эти виджеты должны наследоваться от QGraphicsWidget, Вы также можете наследовать QWidget и поместить виджеты в сцену через QGraphicsProxyWidget, Их можно изменить, выделив углы и перегрузив события мыши. Пожалуйста, проверьте угловые захваты а также большая коробка Примеры. Также проверьте QSizeGrip, Это изменение размера любого QStatusBar,

Панель свойств является самой простой, вы должны перечислить свойства выбранного элемента. Чтобы выстроиться в линию, вы можете заново изобрести колесо и написать верстальщик класс или просто использовать QGraphicsLayout и выделите макет на вашем интерфейсе. Ctrl + левый клик должен выбрать несколько виджетов, кнопка макета должна макетировать их программно, и должен быть нарисован ограничивающий прямоугольник.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]