Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 如何用另一个小部件替换Qsplitter中的小部件?_Qt_Qsplitter - Fatal编程技术网

Qt 如何用另一个小部件替换Qsplitter中的小部件?

Qt 如何用另一个小部件替换Qsplitter中的小部件?,qt,qsplitter,Qt,Qsplitter,我有一个拆分器和两个小部件。。。我想用拆分器替换第一个小部件,并将第一个小部件和另一个小部件放在其中 在相同的安排下(运行时) PS:我不能从拆分器中删除第一个小部件,因为QSplitter可以处理2个以上的小部件,所以不需要新的拆分器来替换。假设拆分器中有两个小部件: QSplitter *splitter = new QSplitter(this); setCentralWidget(splitter); QTextEdit *widget0 = new QTextEdit; QTextE

我有一个拆分器和两个小部件。。。我想用拆分器替换第一个小部件,并将第一个小部件和另一个小部件放在其中 在相同的安排下(运行时)


PS:我不能从拆分器中删除第一个小部件,因为QSplitter可以处理2个以上的小部件,所以不需要新的拆分器来替换。假设拆分器中有两个小部件:

QSplitter *splitter = new QSplitter(this);
setCentralWidget(splitter);

QTextEdit *widget0 = new QTextEdit;
QTextEdit *widget1 = new QTextEdit;

splitter->addWidget(widget0);
splitter->addWidget(widget1);
现在,我们可以在这两者之间放置第三个小部件:

QTextEdit *widget2 = new QTextEdit;
splitter->insertWidget(1, widget2);
现在我们有三个小部件和两个拆分器,它们之间的顺序是widget0、widget2、widget1

更新:

如果第二个分离器的方向不同,则:

QSplitter *splitter2 = new QSplitter;
splitter2->setOrientation(Qt::Vertical);
QTextEdit *widget2 = new QTextEdit("2");
splitter2->addWidget(widget0);
splitter2->addWidget(widget2);
splitter->insertWidget(0, splitter2);
结果:


实际上,主拆分器是水平的,我想将第一个小部件垂直拆分为两个小部件。。我想在图片中展示,但我无法上传照片,可能是我没有在主要问题中解释清楚