qt学习(二) buttong layout spinbox slider 示例

开启qt5 creator

新建项目 qt widgets

改写main.cpp

#include "mainwindow.h"
#include <QApplication>
#include <QPushButton>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QPushButton* button = new QPushButton("Quit");
    QObject::connect(button,SIGNAL(clicked()),
                     &app,SLOT(quit()));
    button->show();

    return app.exec();
}

  效果图

代码中 创建一个button按钮 而且是在new新建于堆中 并没有delete 这是因为程序结束后内存自然会由系统回收 示例代码是可以忽略这一点点内存泄漏的

然后通过connect函数将按钮的点击动作clicked()与整个框架application的退出动作quit()进行关联连接

最后的效果就是点击了按钮 整个程序就推出了

//========================================================

开启qt5 creator

新建项目 qt widgets

改写main.cpp

#include "mainwindow.h"
#include <QApplication>
#include <QHBoxLayout>
#include <QSlider>
#include <QSpinBox>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QWidget * window = new QWidget;
    window->setWindowTitle("Enter your age");

    QSpinBox* spinBox = new QSpinBox;
    QSlider* slider = new QSlider(Qt::Horizontal);
    spinBox->setRange(0,130);
    slider->setRange(0,130);

    QObject::connect(spinBox,SIGNAL(valueChanged(int)),
                     slider,SLOT(setValue(int)));
    QObject::connect(slider,SIGNAL(valueChanged(int)),
                     spinBox,SLOT(setValue(int)));
    spinBox->setValue(35);

    QHBoxLayout* layout = new QHBoxLayout;
    layout->addWidget(spinBox);
    layout->addWidget(slider);
    window->setLayout(layout);

    window->show();

    return a.exec();
}

  效果图


代码首先创建一个QWidget 并设置了该QWidget的标题title 为“Enter your age”.

设置了两个组件 一个spinbox 一个slider 并且使用connect将两个组件的值得显示方式关联一起。

将两个组件放入到layout 再将layout放入到QWidget  并调用show()函数进行显示.

 

posted on 2016-06-03 10:50  itdef  阅读(494)  评论(0编辑  收藏  举报

导航