2017-12-03 12 views
0

QTを使用して丸い線の形を描くにはどうすればよいですか?この画像のように。ボタンをクリックすると丸い線をデザインする必要があります。 QTを使用して丸い線の形状を設計するには

enter image description here

void MainWindow::on_btnCreateRoundedLine_clicked() 
{ 

} 

更新画像:ボタンのクリックは、同様に私は時にボタンclick.Andも丸みを帯びたラインを作成する必要がある場合に、長方形の形状を作成し、このコードで

enter image description here

回転することができる。

void Widget::on_btnCreateRect_clicked() 
{ 

    QBrush blueBrush(Qt::green); 
    QPen blackPen(Qt::black); 
    blackPen.setWidth(2); 
    rect = ui->graphicsView->scene()->addRect(-10,-10,250,100,blackPen); 

    rect->setFlag(QGraphicsItem::ItemIsMovable, true); 
    rect->setFlag(QGraphicsItem::ItemIsSelectable,true); 
} 
+0

[最小限の完全で検証可能な例](https://stackoverflow.com/help/mcve)を提供してください。私はあなたの問題を理解できません。 – apalomer

+0

どこに描画しますか? – eyllanesc

+0

'graphicsView'の@eyllanesc – Learner

答えて

1

あなたがカーブをグラフ化したい場合は、推奨オプションはQPainterPathに合格する必要があり、そのオブジェクトに、QGraphicsPathItemを使用することです:

QPainterPath path; 
path.moveTo(10, 20); 
path.lineTo(10, 40); 
path.arcTo(QRectF(10, 20, 40, 40), 180, 180); 
path.moveTo(50, 40); 
path.lineTo(50, 20); 
QPen redPen(Qt::red); 
redPen.setWidth(2); 
QGraphicsPathItem* item = ui->graphicsView->scene()->addPath(path, redPen); 
/* 
    QGraphicsPathItem* item = new QGraphicsPathItem(path); 
    item->setPen(redPen); 
*/ 

出力:

enter image description here

完全な例は、linkにあります。

+0

ありがとう!!! – Learner

+0

カラーダイアログや別の方法で色を選択すると、このアイテムの色を変更する方法を教えてください。 – Learner

関連する問題