我创建了一个没有centralwidget的应用程序,在我的主窗口中,显示为最大化:
setCentralWidget(0);
setWindowState(Qt::WindowMaximized);
在我的主窗口中,我有三个停靠区。dock1被设置为停靠在leftDockWidgetArea区域,dock2和dock3被设置为停靠在rightDockWidgetArea区域。此外,我通过一定的排列方式来安排dock2和dock3。
splitDockWidget(ui->dock2, ui->dock3, Qt::Horizontal);
我得到的结果是三个码头的宽度比为2:1:1。
我的问题是我该如何设置三个码头的宽度,以便它们可以按照1:4:1进行排列。
假设我的屏幕宽度为1024。 我试过了:
ui->dockWidget_PrimeVis->resize(1000, 1000);
这种方法行不通,因为我发现有些人说 dock 的大小是由主窗口控制的。所以我在主窗口中调用 resizeDocks 方法,例如:
resizeDocks({ ui->dock1, ui->dock2,ui->dock3}, { 150,600,150 }, Qt::Horizontal);
它不起作用。另外,由于每个停靠窗口都包含一个子类化小部件,我也尝试为每个子类化小部件设置大小,但同样无效。
因为我们可以通过 GUI 手动更改每个停靠窗口的大小,所以我相信应该有一种方法可以用代码设置每个停靠窗口的大小,对吗?有人知道怎么做吗?