Как добавить флажок в левом нижнем углу QGraphicsView?

Я хочу добавить флажок в левом углу QGraphicsView ,

Я пытался нарисовать его прямо в painEvent с моей точки зрения.

void BhGraphicsView::paintEvent(QPaintEvent* event)
{
QGraphicsView::paintEvent(event);
QStyleOptionButton opt;
opt.state = QStyle::State_Active | QStyle::State_Enabled;
opt.rect = QRect(x,y,300,300);
QPainter painter(viewport());
//histogram_cbox_ is a QCheckBox
histogram_cbox_->style()->drawControl(QStyle::CE_CheckBox, &opt, &painter);
// ....
}

Я не нашел QStyleOptionCheckBox, поэтому я использовал QStyleOptionButton ,

Но проблема в том, что он не показывает текст QCheckbox ,

Как нарисовать кликабельный флажок на QGraphicsView ?!

введите описание изображения здесь

0

Решение

Вы можете добавить QCheckBox к QGraphicsView в макете:

QCheckBox * checkBox = new QCheckBox();
QGridLayout * layout = new QGridLayout(ui->myView);
layout->addWidget(checkBox,0,0,0,0,Qt::AlignBottom | Qt::AlignLeft);
3

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


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