0

の左隅にチェックボックスを追加したい 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ですか?!

ここに画像の説明を入力

4

1 に答える 1

3

レイアウトQCheckBoxの に を追加できます。QGraphicsView

QCheckBox * checkBox = new QCheckBox();
QGridLayout * layout = new QGridLayout(ui->myView);
layout->addWidget(checkBox,0,0,0,0,Qt::AlignBottom | Qt::AlignLeft);
于 2014-05-30T19:35:40.853 に答える