2

我了解如何将 scrollArea 添加到特定的小部件。但是在我的情况下,Qwidget 有多个子小部件,这些都是使用 QVBoxLayout 设置的。现在在这种情况下如何添加滚动条?这里 QWidget 不是中心小部件,它是 TabWidget 的页面之一。我的代码如下所示:

QTabWIdget *center = new QTabWidget; setCentralWIdget(center);

xTab = new QWidget;

formLayout = new QFormLayout; formLayout->addWidget(...); formLayout->addWidget(...); formLayout->addWidget(...); formLayout->addWidget(...);

xTab->setLayout(formLayout);

现在如何将滚动条设置为 xTab?我尝试使用

scrollArea = new QScrollArea;
scrollArea->setWidget(xTab);

但是,这不起作用。

任何想法/建议都是有帮助和赞赏的。

4

2 回答 2

2

您是否尝试过QScrollArea用作标签页?

QTabWIdget *center = new QTabWidget; setCentralWIdget(center);

xTab = new QScrollArea; 
formLayout = new QFormLayout; formLay....
xTab->setLayout(formLayout);
center->addTab(xTab, "XXX Tab");
于 2010-08-04T11:58:29.957 回答
0

我使用以下方法取得了成功:

scroll=new QScrollArea(mainWindow->centralWidget);
scroll->setGeometry(mainWindow->tabWidget->geometry());
scroll->setWidget(mainWindow->tabWidget);
scroll->show();

QScrollArea 定义了可滚动小部件将出现的位置。如果 parent 为 0,则它是一个非模态窗口。setGeometry 将 QScrollArea 实例设置为所需的尺寸(选项卡的尺寸)。setWidget 定义 QScrollArea 将实际滚动的小部件。

于 2013-05-29T10:43:29.403 回答