QT - mostrar valor de DoubleSpinBox en PlainTextEdit

   
Vista:

mostrar valor de DoubleSpinBox en PlainTextEdit

Publicado por connectee (5 intervenciones) el 11/07/2015 21:02:30
Con el ejemplo espero que el pushButton clicked
muestre el valor de la variable x en la forma plainTextEdit.

La variable x está escrita con la intención
de recibir el valor (entre 1990 y 2010)
del QDoubleSpinBox llamado yearBox.

El problema es que hasta ahora lo único que saca
el pushButton son ceros y nada del DoubleSpinBox.

¿Qué es lo que falla?
------------------
el header :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
 
#include <QMainWindow>
#include <QDoubleSpinBox>
//#include <QPlainTextEdit>
//#include "ui_mainwindow.h"
 
namespace Ui {
    class MainWindow;
}
 
class MainWindow : public QMainWindow
{
    Q_OBJECT
 
public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();
 
private slots:
    void displayYear();
 
private:
    Ui::MainWindow *ui;
    QDoubleSpinBox *yearBox = new QDoubleSpinBox;
 
};
 
#endif // MAINWINDOW_H

---------------------
el .cpp :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDoubleSpinBox>
 
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow),
    yearBox(new QDoubleSpinBox())
{
    ui->setupUi(this);
 
    connect(ui->pushButton, &QPushButton::clicked, this, &MainWindow::displayYear);
}
 
MainWindow::~MainWindow()
{
    delete ui;
}
 
void MainWindow::displayYear()
{
    double x = yearBox->value();
    ui->plainTextEdit->appendPlainText(QString::number(x));
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

mostrar valor de DoubleSpinBox en PlainTextEdit

Publicado por juanki (67 intervenciones) el 11/07/2015 23:09:36
Hola

Pero, ¿qué valor le das al QDoubleSpinBox? ¿Lo muestras por pantalla?

Por otra parte, ¿cómo lo creas?, por que en el header ya lo estás creando:
1
2
3
4
5
private:
 
    Ui::MainWindow *ui;
 
    QDoubleSpinBox *yearBox = new QDoubleSpinBox;

y luego en el cpp, ¿por qué haces?:
1
yearBox(new QDoubleSpinBox())

¿Por qué no lo creas con QtDesigner en la interfaz?

Por cierto, se te ha olvidado destruirlo.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar