好吧,我一直在疯狂地尝试找到一天的答案。我想要做的是制作一个标签中的所有小部件的副本。我想将副本传输到新选项卡。考虑一个选项卡中的表单,当您单击“新选项卡”时,它将显示相同的表单,但显示为空白。我是QTCreator的新手,所以任何指针都会很棒。无法将标签中的Qwidgets复制到新标签
在此先感谢!
好吧,我一直在疯狂地尝试找到一天的答案。我想要做的是制作一个标签中的所有小部件的副本。我想将副本传输到新选项卡。考虑一个选项卡中的表单,当您单击“新选项卡”时,它将显示相同的表单,但显示为空白。我是QTCreator的新手,所以任何指针都会很棒。无法将标签中的Qwidgets复制到新标签
在此先感谢!
任何派生自QObject
的类别是not copyable。如果你想“复制”一个小部件,那么当你有两个不同的视图来表示模型时,模型视图体系结构可能会更好。
另一个想法是:您可以让每个需要可复制的类创建一个状态对象,然后可以用它来设置副本上的状态。
由于您只是试图在多个位置显示相同的表单,因此您可以这样做。
首先,创建您的形式,我会假设被称为MyForm
:
class MyForm: QWidget {...};
然后,在父窗体:
void ContainerForm::ContainerForm(...) {
connect(pbAddNewTab, SIGNAL(clicked()), SLOT(addNewTab()));
}
void ContainerForm::addNewTab() {
tabWidget->addTab(new MyForm(this));
}
您可能需要拉出new
这样你就可以设置信号和插槽等。
如果新窗体是空白的,那么它不是副本。所有你需要做的是创建一个新的窗体小部件实例。
只是为了澄清。您是在谈论在设计时还是运行时将小部件复制到新选项卡?运行时间为 –
。对我的清晰度抱歉。我只是想创建一个表单进入一个可以复制到x个选项卡中的选项卡。 – Sonoilmedico