QT-纯代码控件-QHBoxLayout(水平布局)

用两个控件实现一个水平布局的效果

1.新建一个无ui界面的工程,其基类为widget

2.代码实现

widget.h头文件不用做任何改变

widget.cpp

#include "widget.h"
#include <QSlider>      //滑竿控件
#include <QSpinBox>     //spinbox控件
#include <QLayout>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    //添加两个控件
    QSpinBox * SpinBox = new QSpinBox();
    QSlider * Slider = new QSlider(Qt::Horizontal);
    SpinBox->setValue(46);
    Slider->setMaximum(100);
    Slider->setMinimum(0);
    Slider->setValue(50);
    Slider->update();
    //创建布局对象,将控件添加到其中
    QHBoxLayout * layout = new QHBoxLayout;
    layout->addWidget(SpinBox);
    layout->addWidget(Slider);
    //在窗体上设置layout
    this->setLayout(layout);
    //信号与槽函数连接
    connect(Slider,SIGNAL(valueChanged(int)),SpinBox,SLOT(setValue(int)));
    connect(SpinBox,SIGNAL(valueChanged(int)),Slider,SLOT(setValue(int)));
}

Widget::~Widget()
{

}

main.cpp

#include "widget.h"
#include <QApplication>
#include <QSlider>
#include <QSpinBox>
#include <QLayout>

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

    w.setWindowTitle("水平布局");
    w.resize(300,80);
    w.show();
    /*
     *  以下代码和添加在构造函数中的方式是同样的
    //新建两个控件
    QSpinBox * SpinBox = new QSpinBox(&w);
    QSlider * Slider = new QSlider(Qt::Horizontal,&w);
    SpinBox->setValue(46);
    Slider->setValue(50);
    //创建布局对象,将控件添加到其中
    QHBoxLayout * layout = new QHBoxLayout;
    layout->addWidget(SpinBox);
    layout->addWidget(Slider);
    //在窗体上设置layout
    w.setLayout(layout);

    this->setwindowTitile("水平布局");
    this->resize(300,80);

    */


    return a.exec();
}

3.效果展示

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值