Vai al contenuto

[C++] Variare il valore di default dello slider QT


Greu84

Messaggi raccomandati

Ho un programma molto semplice, scritto in c++ che utilizza le librerie QT.

Questo programma crea un semplicissimo Widget con un Display LCD collegato ad uno Slider, ed un pulsante per chiudere il tutto.

immagine1zj1.png

ho un unico file "main.cpp", all'interno del quale sono presenti tutte le funzioni necessarie.

Lo slider è inizializzato al valore "0" dalla riga di codice

"slider->setValue(0);"

io però volevo creare una variabile int, per poter variare a mio piacere il valore di default a cui settare lo slider. Come posso fare?

Riporto il testo intero per completezza:

#include <QApplication>
#include <QFont>
#include <QLCDNumber>
#include <QPushButton>
#include <QSlider>
#include <QVBoxLayout>
#include <QWidget>



/* Definizione dell'ooggetto MyWidget e costruttore */
class MyWidget : public QWidget
{
public:
    MyWidget(QWidget *parent = 0);
};

MyWidget::MyWidget(QWidget *parent)
    : QWidget(parent)
{
    QPushButton *quit = new QPushButton(tr("Quit"));
    quit->setFont(QFont("Times", 18, QFont::Bold));

    QLCDNumber *lcd = new QLCDNumber(2);
    lcd->setSegmentStyle(QLCDNumber::Flat);


    QSlider *slider = new QSlider(Qt::Horizontal); //(Qt::Vertical)
    slider->setRange(0, 99); // Definizione del range dello slider
    slider->setValue(0); // Imposta il valore iniziale


    /* Interconnessioni tra Slots e Signals */
    connect(quit, SIGNAL(clicked()), qApp, SLOT(quit()));
    connect(slider, SIGNAL(valueChanged(int)),
            lcd, SLOT(display(int)));


    /* Costruzione dell'interfaccia */
    QVBoxLayout *layout = new QVBoxLayout;
    layout->addWidget(quit);
    layout->addWidget(lcd);
    layout->addWidget(slider);
    setLayout(layout);
}

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    MyWidget widget;
    widget.show();
    return app.exec();
}

Link al commento
Condividi su altri siti

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

×
×
  • Crea Nuovo...