Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    14

    [c++]scrivere risultato in una finestra

    ciao a tutti rieccomi qua
    vorrei riuscire a inserire un numero in un campo della finestra(lineEdit textEdit) usarlo come variabile, moltiplicarlo per 2 e stampare nella finestra il risultato.
    Ho cercato in rete vari tutorial e ho trovato questi funzionanti:
    codice:
    #include "timer.h"
    #include <QTime>
    
    Timer::Timer(QWidget *parent)
        : QWidget(parent)
    {
        label=new QLabel("",this);
        label->move(50,50);
    
        QTime qtime=QTime::currentTime();
        QString stime=qtime.toString(Qt::LocalDate);
        label->setText(stime);
    
        startTimer(1000);
    
    }
    
    void Timer::timerEvent(QTimerEvent *event)
            {
        QTime qtime=QTime::currentTime();
        QString stime=qtime.toString(Qt::LocalDate);
        label->setText(stime);
    }
    Timer::~Timer()
    {
    
    }
    codice:
    void Communicate::OnPlus()
    {
        int val =label->text().toInt();
        val++;
        label->setText(QString::number(val));
        if (val == 0) label->setText("numero");
    }
    mentre il mio sorgente non funziona:
    request member "toString" in "risultato",which is of non-class type "int"
    codice:
    void MainWindow::calcolo()
    {
      int numero=testo->text().toInt();
      int risultato=numero*2;
    
      QString s_risultato=risultato.toString(QString::number(int));
      label_1->setText(s_risultato);
    }
    questo si compila ma va in crash il programma
    codice:
    void MainWindow::calcolo()
    {
      int numero=testo->text().toInt();
      int s_risultato=numero*2;
    
      //QString s_risultato=risultato.toString(QString::number(int));
      label_1->setText(QString::number(s_risultato));
    }

    penso che l'errore sia in toString() ma non so cosa metterci nel sito Qt c'è la soluzione sicuramente ma purtroppo non so cosa cercare

    grazie a tutti gip

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    14

    [risolto]

    ciao ho trovato la soluzione
    codice:
     void MainWindow::calcolo()
    {
      int numero=testo->text().toInt();
      int s_risultato=numero*2;
    
     
      label_1->setText(tr("%10").arg(s_risultato));
    }
    questo funziona ma non so se è il metodo migliore cercherò ancora

    grazie a tutti gip

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.