gpt4 book ai didi

qt - 设计师如何创建 Line 小部件?

转载 作者:行者123 更新时间:2023-12-01 18:58:23 34 4
gpt4 key购买 nike

在 Qt Designer 中,您可以拖动“Line”小部件,这将在您的布局中创建一条线。

但是我检查了文档和标题,我没有找到“Line”标题/小部件,那是什么?

最佳答案

在 Qt 5.7 中,Qt Designer 生成的水平线代码(可以使用“Form/View Code...”在菜单中检查)是:

QFrame *line;
line = new QFrame(Form);
line->setFrameShape(QFrame::HLine);
line->setFrameShadow(QFrame::Sunken);

这将创建您在 Qt Designer 中看到的线条。

当前的答案似乎没有给出可行的解决方案,这里是所有答案的比较(这个解决方案是第一行):

Horizontal lines in Qt

完整代码:

#include <QtWidgets>

int main(int argc, char **argv)
{
QApplication app(argc, argv);

QWidget widget;
auto layout = new QVBoxLayout;
widget.setLayout(layout);
widget.resize(200, 200);

auto lineA = new QFrame;
lineA->setFrameShape(QFrame::HLine);
lineA->setFrameShadow(QFrame::Sunken);
layout->addWidget(lineA);

QWidget *lineB = new QWidget;
lineB->setFixedHeight(2);
lineB->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
lineB->setStyleSheet(QString("background-color: #c0c0c0;"));
layout->addWidget(lineB);

auto lineC = new QFrame;
lineC->setFixedHeight(3);
lineC->setFrameShadow(QFrame::Sunken);
lineC->setLineWidth(1);
layout->addWidget(lineC);

QFrame* lineD = new QFrame;
lineD->setFrameShape(QFrame::HLine);
layout->addWidget(lineD);

widget.show();
return app.exec();
}

关于qt - 设计师如何创建 Line 小部件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10053839/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com