其他分享
首页 > 其他分享> > QT 第24课 布局管理器(三)

QT 第24课 布局管理器(三)

作者:互联网

狄泰软件学院课程总结

文章目录

文章引用: 1

写出界面解决方法
(1)、绝对定位组件的坐标和大小
(2)、嵌套QBoxLayout
(3)、创建3x2的QGridLayout
出现问题: 放大后,文字后面有大量空白,不够美观
表单: 左边是标签,右边是组件

Widget.h

#ifndef WIDGET_H
#define WIDGET_H

#include <QtGui/QWidget>

class Widget : public QWidget
{
    Q_OBJECT
public:
    Widget(QWidget *parent = 0);
    ~Widget();
};

#endif // WIDGET_H


Widget.cpp

#include "Widget.h"
#include <QLabel>
#include <QLineEdit>
#include <QGridLayout>
#include <QFormLayout>

Widget::Widget(QWidget *parent)
    : QWidget(parent, Qt::WindowCloseButtonHint)  // 实现的窗口上只有一个关闭按钮
{


    QLineEdit*  NameEdit = new QLineEdit();
    QLineEdit*  EmailEdit = new QLineEdit();
    QLineEdit*  AddressEdit = new QLineEdit();

    QFormLayout* layout = new QFormLayout();

    layout->addRow("Name:", NameEdit);    // 通过字符串可以指定标签,而不用生成一个标签组件
    layout->addRow("Email: ", EmailEdit);
    layout->addRow("Address: ", AddressEdit);



    layout->setRowWrapPolicy(QFormLayout::WrapAllRows);//设置样式(嵌入式常用方式)
    layout->setLabelAlignment(Qt::AlignRight);         //标签左右对齐


    layout->setSpacing(10);

    setLayout(layout);
    setWindowTitle("Md");

}

Widget::~Widget()
{

}

main.cpp

#include <QtGui/QApplication>
#include "Widget.h"

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

    return a.exec();
}

标签:24,Widget,layout,QT,QWidget,QLineEdit,new,管理器,include
来源: https://blog.csdn.net/dashuu/article/details/116348946