zl程序教程

您现在的位置是:首页 >  工具

当前栏目

Qt horizontal line和vertical line的使用方法及在 QGridLayout 中的应用

Qt方法应用 line 使用
2023-09-14 09:07:01 时间

1.horizontal line 和vertical line 的使用

horizontal line 和vertical line 实际上是由QFame类,设置相应的参数来实现的;而不是由单独的类来实现的,例如(QHorizontalLine/QVerticalLine);

1.1.控件拖拽

在这里插入图片描述

1.2.代码实现

1     QFrame *line = new QFrame();
2     line->setFrameShape(QFrame::HLine);
3     line->setFrameShadow(QFrame::Plain);
4     //line->raise();//顶层展示

2.horizontal line 和vertical line 在QGridLayout 中的应用

以下为代码实现:

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "testform.h"
#include <QDebug>
#include <QGridLayout>
#include <QHBoxLayout>
#include <QPushButton>
#include <QLabel>


MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    QGridLayout *m_Layout = new QGridLayout(this);
    m_Layout->setSpacing(5);//setVerticalSpacing()/setHorizontalSpacing()

    //1.创建标题1
    QLabel *m_title = new QLabel(tr("题目1"));
    m_title->setMinimumHeight(50);
    m_title->setMaximumHeight(60);
    m_title->setAlignment(Qt::AlignCenter);
    m_Layout->addWidget(m_title, 0, 0, 1, 1);

    //分割线
    QFrame *line = new QFrame();
    line->setFrameShape(QFrame::HLine);
    line->setFrameShadow(QFrame::Plain);
    //line->raise();//顶层展示
    m_Layout->addWidget(line,1,0,1,1);

    //2.创建标题2
    m_title = new QLabel(tr("题目2"));
    m_title->setAlignment(Qt::AlignCenter);//Qt::AlignHCenter|Qt::AlignTop
    m_Layout->addWidget(m_title, 2, 0, 1, 1);

    resize(400, 4*30);
    ui->centralWidget->setLayout(m_Layout);
}

MainWindow::~MainWindow()
{
    delete ui;
}

在这里插入图片描述