我想在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
上绘制可点击的复选框? 最佳答案
您可以在布局中的QCheckBox
中添加QGraphicsView
:
QCheckBox * checkBox = new QCheckBox();
QGridLayout * layout = new QGridLayout(ui->myView);
layout->addWidget(checkBox,0,0,0,0,Qt::AlignBottom | Qt::AlignLeft);