Невозможно использовать виджеты ввода с QGraphicsItemGroupC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Невозможно использовать виджеты ввода с QGraphicsItemGroup

Сообщение Anonymous »


Я пытаюсь использовать такие входные данные, как QLineEdit и QSlider, внутри QGraphicsItemGroup.

Я могу показывать их и перетаскивать группу, но не могу с ними взаимодействовать. Это явно проблема с фокусом и событиями.

Как использовать группу, чтобы все объекты перемещались вместе, но фокус переключался на них при нажатии на определенные элементы?

Пример минимального кода:

QSlider* слайдер_ = новый QSlider(Qt::Horizontal); QGraphicsProxyWidget* слайдер_item_ = новый QGraphicsProxyWidget(); слайдер_item_->setWidget(slider_); qreal слайдерX = 0; qreal слайдерY = 0; слайдер_item_->setPos(слайдерX, слайдерY); QGraphicsItemGroup* tile_group_ = новый QGraphicsItemGroup(); tile_group_->setFlags(QGraphicsItemGroup::ItemIsMovable | QGraphicsItemGroup::ItemIsFocusable | QGraphicsItemGroup::ItemIsSelectable); tile_group_->addToGroup(slider_item_); сцена = новый QGraphicsScene (это); сцена->addItem(tile_group_); Я попытался точно определить проблему. Это происходит только тогда, когда элементы определены внутри группы, поэтому мне нужно как-то обрабатывать события вручную. У меня Ubuntu 22.04.
Ответить

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

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

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

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

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