我在写项目的时候,碰到了一个问题
如何让qt QScrollArea的 滚动条在左边显示
2条回答 默认 最新
关注要在 Qt 的 QScrollArea 中将滚动条显示在左边,可以通过设置 QScrollBar 的位置并使用 QBoxLayout 布局来实现。
具体步骤如下:
- 创建一个 QScrollArea 对象,并将其添加到布局中。例如:
QScrollArea *scrollArea = new QScrollArea(this); layout->addWidget(scrollArea);- 创建一个 QWidget 对象作为 QScrollArea 的内部小部件,并将其设置为 QScrollArea 的 widget。例如:
QWidget *widget = new QWidget; scrollArea->setWidget(widget);- 创建两个 QScrollBar 对象,一个用于垂直滚动条,一个用于水平滚动条,并将其分别添加到 QScrollArea 的左侧和上方。例如:
QScrollBar *vScrollBar = new QScrollBar(Qt::Vertical, this); QScrollBar *hScrollBar = new QScrollBar(Qt::Horizontal, this); scrollArea->setVerticalScrollBar(vScrollBar); scrollArea->setHorizontalScrollBar(hScrollBar); layout->addWidget(vScrollBar, 0, 0); layout->addWidget(hScrollBar, 1, 1);- 设置 QBoxLayout 布局的方向为从右到左,并将 QScrollArea 的 widget 添加到该布局中。例如:
QHBoxLayout *hBoxLayout = new QHBoxLayout; hBoxLayout->addStretch(); hBoxLayout->addWidget(widget); layout->addLayout(hBoxLayout);这样就可以将 QScrollArea 的滚动条显示在左侧。注意,这种方法需要根据实际情况进行调整,以便在 QScrollArea 中正确放置控件和滚动条。
解决 无用评论 打赏 举报