【问题标题】:Rotate whole qwidget by angle按角度旋转整个 qwidget
【发布时间】:2017-09-09 08:26:14
【问题描述】:

我正在 wt 中创建简单的俄罗斯方块,并继承了小部件来创建片段(我在游戏中放置了四个片段,四个不同的类)。我在每一件作品中都借鉴了绘画活动。如何旋转小部件? 我可以在 painEvent 函数中绘制旋转图像,但我宁愿旋转整个小部件。这在 qt 中是 pisible 吗?

【问题讨论】:

    标签: qt


    【解决方案1】:

    您无法在 Qt 中轻松旋转任何小部件。但是您可以将您的小部件添加到 QGraphicsScene,旋转它并显示在 QGraphicsView 上。这是一个简短的示例:

    QGraphicsScene *scene = new QGraphicsScene(this);
    QPushButton *button = new QPushButton();
    button->setText("My cool button");
    
    QGraphicsProxyWidget *w = scene->addWidget(button);
    w->setPos(50, 50);
    w->setRotation(45);
    ui->graphicsView->setScene(scene);
    

    或者,您可以在 QML 上重写所有内容。在 QML 中,您几乎可以旋转任何东西。

    【讨论】:

    • 我还能与小部件交互(悬停、点击)吗?
    • @DanielBrunner,是的,您可以像往常一样继续与小部件进行交互。
    猜你喜欢
    • 1970-01-01
    • 2021-07-19
    • 2012-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多