【发布时间】:2015-08-25 12:37:27
【问题描述】:
我有 2 个继承自 QGLWidget 的自定义小部件,我的目标是使用这些小部件从 2 个不同的视图中显示相同的场景。为此,我与第二个小部件共享第一个小部件。但是,这需要一个自定义构造函数,而不是编译后的 UI 文件提供的。 比如
// The line I mention from Compiled UI file
widget_2 = new SideGlWidget(widget);
// What I actually want this line to be
widget_2 = new SideGlWidget(widget, MainScreen);
有些人建议稍后使用 init 函数设置此类附加参数。那么如何设置 QGLWidget 的 shareWidget 成员呢? 这是 SideGlWidget 的构造函数
SideGlWidget::SideGlWidget(QWidget *parent,QGLWidget * shareWidget)
: QGLWidget(parent,shareWidget)
{
}
欢迎任何 cmets 和编辑。
【问题讨论】:
-
这是什么语言?看起来像 C++?
-
没错,第一行来自ui_mainwindow.h,这要归功于UI文件的编译,第二行是我需要的
-
显示
SideGlWidget的构造函数的代码会有帮助。我假设SideGlWidget是QGLWidget的子类,那么您需要添加第二个构造函数,将shareWidget转发到基类构造函数。 -
我用该信息编辑了问题
标签: c++ qt user-interface qglwidget