gpt4 book ai didi

c++ - 添加 Q3DScatter 到现有的 QDialog 表单

转载 作者:搜寻专家 更新时间:2023-10-31 02:13:52 29 4
gpt4 key购买 nike

我想将一个 Q3DScatter 实例插入到我的一个表单中。我能够构建图形并将其显示为:

Q3DScatter *graph = new Q3DScatter();
QWidget *container = QWidget::createWindowContainer(graph);

...do some graph stuff...

container.show()

这成功创建了图表并将其显示在自己的窗口/容器中。我现在想把它放在另一个在 qt-creator 中设计的窗体中。我在表单 (QDialog) 上放置了一个空的 widget 作为占位符,但我无法将 Q3DScatter 移动到小部件中。

我在文档中看到 Q3DScatter::Q3DScatter(const QSurfaceFormat *format = Q_NULLPTR, QWindow *parent = Q_NULLPTR) 但我没有 QWindow 父级附加到它,就像我想要的形式喜欢将其添加到 QDialog...

一般来说,我对widgets 很陌生,所以如果这是错误的方法,请纠正我。

最佳答案

将容器添加为对话框的子项。如果在调整对话框大小时需要调整大小,请放入布局。示例:

MyDialog::MyDialog(Q3DScatter *scatter, QWidget *parent) : QDialog(parent)
{
QHBoxLayout * const l = new QHBoxLayout(this);
l->setMargin(0);
l->addWidget(QWidget::createWindowContainer(scatter, this);
}

关于c++ - 添加 Q3DScatter 到现有的 QDialog 表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40642742/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com