gpt4 book ai didi

qt - QFormLayout中自定义QWidget,垂直对齐问题

转载 作者:行者123 更新时间:2023-12-02 04:14:23 24 4
gpt4 key购买 nike

我想在 QFormLayout 的一行中使用定制的 QWidget。下面的代码展示了一个表单布局,其中第一行有一个 QLineEdit,第二行有一个定制的小部件:

问题是定制的小部件没有垂直对齐。如何垂直对齐?

项目.pro:

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = CustomLineEdit
TEMPLATE = app

SOURCES += main.cpp

main.cpp

#include <QApplication>

#include <QHBoxLayout>
#include <QFormLayout>
#include <QLineEdit>
#include <QPushButton>

int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWidget w;

QFormLayout *formLayout = new QFormLayout(&w);

QLineEdit *leUser = new QLineEdit;

QWidget *widget = new QWidget;
QHBoxLayout *hLayout = new QHBoxLayout(widget);
hLayout->addWidget(leUser);
hLayout->addWidget(new QPushButton);

formLayout->addRow("Text:", new QLineEdit);
formLayout->addRow("User:", widget);

w.show();
return a.exec();
}

最佳答案

这是因为利润。只需添加以下行:

QHBoxLayout *hLayout = new QHBoxLayout(widget);
hLayout->setMargin(0); //this line

关于qt - QFormLayout中自定义QWidget,垂直对齐问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34633169/

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