c++ - QT 5 给设计器添加继承自QGraphicsView的自定义widget

标签 c++ qt qwidget qgraphicsview

我有一个来自修改后的弹性节点示例的自定义小部件。它继承自 QGraphicsView。在示例中,它被设置为主窗口中的中央小部件,因此无法添加任何内容。以下是示例中 main 的代码:

#include "graphwidget.h"

#include <QApplication>
#include <QTime>
#include "mainwindow.h"

int main(int argc, char **argv)
{
    QApplication app(argc, argv);
    qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));

    GraphWidget *widget = new GraphWidget;

    QMainWindow window;
    window.setCentralWidget(widget);

    window.show();
    return app.exec();
}

我想将小部件添加到 ui 窗体,以便我可以添加一些按钮和输入。我怎样才能做到这一点?

最佳答案

您现在正在做的是申请。

如果您想在 Qt 中制作自定义小部件,您需要将其构建为自定义设计器小部件 - 一个插件(作为 Dll)。

在 Qt creator 中选择 OtherProject=>Qt Custom Designer Widget 并创建一个项目。您需要构建为发布版本,而不是调试版本。

构建完成后,如果Qt还没有,需要将.dll文件复制到Qt/plugins/designerQt/Tools/QtCreator/bin/plugins - 你会在那里找到 .dll。您还需要使用工具链构建插件,因为 Qt 创建者/设计者是 VisualStudio 2013 64 位或 Mingw - 必须相同。

这并不容易,但我祝你好运。

关于c++ - QT 5 给设计器添加继承自QGraphicsView的自定义widget,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30415138/

相关文章:

c++ - 尝试将文本文件加载到动态分配的二维数组时出现 bad_array_new_length 错误

c++ - std::initializer_list,大括号初始化和 header

c++ - gtest –– 使用 TEST_F 时 undefined symbol

c++ - 实时从数据读取器终端获取数据到 GUI

python-3.x - QStackedWidget - 一页一页地改变页面

qt - 在 Visual C++ 2010 中配置 Qt

c++ - 如何通过 MySQL++ 库创建和使用 MySQL 语句

c++ - Qt 气球小部件掩码

qt - 当用户调整 QMainWindow 大小时如何分配回调?

c++ - Qt5 在 QtQuick2 中使用 QWidget