你可以通过设置标题栏和内容栏分别放在不同的 QWidget 中,并对内容栏的 QWidget 设置边框线来实现这个需求。下面是一个简单的示例代码:
#include <QtWidgets>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建主窗口QWidget
QWidget mainWindow;
QVBoxLayout *mainLayout = new QVBoxLayout;
// 创建标题栏Widget并设置背景色
QWidget titleBar;
titleBar.setStyleSheet("background-color: lightblue;");
// 创建内容栏Widget,包含两个QPushButton
QWidget contentArea;
QVBoxLayout *contentLayout = new QVBoxLayout;
// 给内容栏Widget设置边框线
contentArea.setStyleSheet("border: 1px solid black;");
QPushButton *button1 = new QPushButton("Button 1");
QPushButton *button2 = new QPushButton("Button 2");
contentLayout->addWidget(button1);
contentLayout->addWidget(button2);
contentArea.setLayout(contentLayout);
// 将标题栏和内容栏添加到主窗口布局中
mainLayout->addWidget(&titleBar);
mainLayout->addWidget(&contentArea);
mainWindow.setLayout(mainLayout);
mainWindow.show();
return app.exec();
}
在这段代码中,我们创建了一个主窗口 mainWindow
,其中包含了一个标题栏 titleBar
和一个内容区域 contentArea
。我们给标题栏设置了背景颜色,并给内容区域设置了边框线样式。最后将标题栏和内容区域添加到主窗口的垂直布局中以显示出完整的界面效果。
内容由零声教学AI助手提供,问题来源于学员提问