Russian Qt Forum
Апрель 20, 2024, 13:00 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: передать параметры в сигнал QnetworkReply::finished()  (Прочитано 2447 раз)
megido
Гость
« : Июль 28, 2016, 22:56 »

значит мне нужно открыть урл, забрать оттуда данные и вставить в таблицу в определенную ячейку, ну и еще проделать некоторые манипуляции с полученными данными и теми что у меня уже есть.

например
Код:
void X::x()
{
 int a =12;
 int row = 3;
 emit SendRequest('site.ru/somerequest');
}

... тут еще код отправки запроса

void X::RequestFinished()
{
response=reply->readAll();
// а вот тут мне нужны переменные а и row;
//...

}


как мне блин их передать?
Записан
Bepec
Гость
« Ответ #1 : Июль 29, 2016, 00:00 »

1) сделать членами класса. Подходит если запрос единовременно может быть только один.
Код:
class X : public QObject
{
public:
X();
private slots:
void RequestFinished();
private:
int a;
int row;
}
2) создать структуру, которая будет хранить данные и откуда будут браться данные. При запросе добавляем туда все данные, при получении finished сравниваем урлы и забираем данные с изыманием структуры Улыбающийся
Код:
struct rowAData
{
int a;
int row;
QString url;
}

class X : public QObject
{
public:
X();
private slots:
void RequestFinished();
private:
QList<rowAData> listData_;
}

Остальное всё сложнее, описывать лень Веселый
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.044 секунд. Запросов: 20.