Russian Qt Forum

Qt => Вопросы новичков => Тема начата: swswsss от Июль 19, 2017, 14:48



Название: рандом в qt
Отправлено: swswsss от Июль 19, 2017, 14:48
Здравствуйте,
помогите нубу разобраться с рандомом
есть вот такая вот задача
Есть 1 поле для ввода и кнопка. При нажатии, в поле для ввода появляется случайное число.
пытался ее решить вот так
Код:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QMessageBox"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}
//void MainWindow::on_pushButton_clicked()
{

    QString a = ui->lineEdit->text();
    //int b = a.toInt();
    int b;
    //b = rand(); // запись случайного числа, которое вернет rand()
    //ui->lineEdit->setText(QString::number(b));
    QString c = ui->lineEdit->setText(QString("%1").arg(rand()%9+1));
    ui->lineEdit->setText(QString::number(c));
    //ui->lineEdit->setText(QString::number(f));
    //int box3 = c.toInt();
    //int f = box + box2 +box3;
    //ui->lineEdit->setText(QString::number(f));

}


кнопку в дизайнере и lineEdit я сделал.Если можно с небольшими пояснениями.
Спасибо.


Название: Re: рандом в qt
Отправлено: Apktyc от Июль 19, 2017, 15:21
Достаточно и так
Код
C++ (Qt)
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QMessageBox"
 
MainWindow::MainWindow(QWidget *parent) :
   QMainWindow(parent),
   ui(new Ui::MainWindow)
{
   qsrand(QTime::currentTime().msecsSinceStartOfDay());
   ui->setupUi(this);
}
 
MainWindow::~MainWindow()
{
   delete ui;
}
void MainWindow::on_pushButton_clicked()
{
   ui->lineEdit->setText(QString::number(qrand()%9 + 1));
}
Добавлено qsrand() для еще большего рандома. Ну а для добавления номера должно и так пойти.
Возможно надо будет добавить #include <QTime>


Название: Re: рандом в qt
Отправлено: swswsss от Июль 20, 2017, 01:38
спасибо
но выдает ошибку,причем не очень понятно какую так как с кодировкой беда
вот скрины
#include "QTime"  я подключил


Название: Re: рандом в qt
Отправлено: Johnik от Июль 20, 2017, 07:53
Одно из решений проблемы (http://www.prog.org.ru/topic_30878_0.html) с кодировкой. Ну и поиск по форуму.

#include "QTime"  я подключил

а так?
Код:
#include <QTime>