无法将选项卡中的Qwidgets复制到新选项卡
Cannot copy Qwidgets in tab to a new tab
好吧,我已经疯了一天了,试图找到一个答案。我要做的就是复制一个标签中的所有小部件。我想把副本转到一个新标签上。想象一下选项卡中的表单,当您单击"新选项卡"时,它会显示相同的表单,但空白。我是QTCreator的新手,所以任何指针都会很棒。
提前感谢!
任何从QObject
派生的类都不可复制。如果您想要"复制"一个小部件,那么模型-视图体系结构可能会更适合您使用两个不同的视图来表示模型。
另一个想法:你可以让每个需要可复制的类创建一个状态对象,然后可以用来设置副本的状态。
因为你只是想在多个地方显示相同的表单,你可以这样做:
首先,创建您的表单,我假设它名为MyForm
:
class MyForm: QWidget {...};
然后,在父表单中:
void ContainerForm::ContainerForm(...) {
connect(pbAddNewTab, SIGNAL(clicked()), SLOT(addNewTab()));
}
void ContainerForm::addNewTab() {
tabWidget->addTab(new MyForm(this));
}
您可能需要拔出new
,以便您可以设置信号和插槽等
如果新表单是空白的,那么它就不是副本。您只需要创建表单小部件的一个新实例。
相关文章:
- 如何在选项卡视图Qt中设置一个新项目,并保存以前的项目
- Win32编译器选项和内存分配
- C/C++预处理器是否可以检测一些编译器选项
- 是否有C++编译器选项允许激进地删除所有函数调用,并将参数传递给具有空体的函数
- 将--whole archive链接器选项与CMake和具有其他库依赖项的库一起使用
- 通过选项卡的文本设置QTabWidget顺序
- 通过ccmake在cmake中缓存依赖选项
- 如何从IE打开新选项卡
- GCC 5.3 中的新选项:-fno-semantic-interposition
- 提升程序选项 添加选项语法
- 在文件后添加新选项卡 - >新
- 以编程方式在新选项卡内创建新的QTextEdit
- 在新选项卡(Internet Explorer)中打开URL
- 根据第一个选项选择选项组
- 为什么c++透视图和新项目选项在Eclipse中不可用
- Gtk Notebook小部件添加新选项卡错误
- Qt:在按钮点击上添加自定义新选项卡
- 无法将选项卡中的Qwidgets复制到新选项卡
- 提升计划选项依赖选项
- 使用 /Command 选项从命令行为 Visual Studio C++ 项目创建一个新文件