2021 시작

#include "widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    int xpos = 20,ypos =20;
    for(int i=0;i<6;i++)
    {
        if(i<=2)
        {
            slider[i]=QSharedPointer<QSlider>
                    (new QSlider(Qt::Vertical,this));   //세로로세움
            slider[i]->setGeometry(xpos,20,30,80);
            xpos +=30;
        }
        else if(i >= 3)
        {
            slider[i] = QSharedPointer<QSlider>
                    (new QSlider(Qt::Horizontal,this));//가로로눕힘
            slider[i]->setGeometry(130,ypos,80,30);
            ypos += 30;
        }
        slider[i]->setRange(0,100);             //크기설정 0~100
        slider[i]->setValue(50);                //초기값 값 설정
    }

    xpos = 20;
    for(int i=0;i<3;i++)
    {
        QString str = QString("%1").arg(slider[i]->value());
        lb[i] = QSharedPointer<QLabel>(new QLabel(str,this));
        lb[i]->setGeometry(xpos+10,100,30,40);
        xpos +=30;
    }

    connect(slider[0].get(),SIGNAL(valueChanged(int)),//값이 바뀔떄마다 valueChnaged호출
            this,SLOT(valueChanged1(int)));
    connect(slider[1].get(),SIGNAL(valueChanged(int)),
            this,SLOT(valueChanged2(int)));
    connect(slider[2].get(),SIGNAL(valueChanged(int)),
            this,SLOT(valueChanged3(int)));

}

void Widget::valueChanged1(int value)
{
    lb[0]->setText(QString("%1").arg(value));   //라벨을 slider의 값으로 바꿈
    slider[3]->setValue(slider[0]->value());
}

void Widget::valueChanged2(int value)
{
    lb[1]->setText(QString("%1").arg(value));
    slider[4]->setValue(slider[1]->value());

}

void Widget::valueChanged3(int value)
{
    lb[2]->setText(QString("%1").arg(value));
    slider[5]->setValue(slider[2]->value());

}




Widget::~Widget()
{

}

QSlider.zip
0.00MB

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading