Russian Qt Forum

Qt => Работа с сетью => Тема начата: yankeenoobs от Январь 08, 2015, 03:28



Название: Применение прокси к элементу QWebView
Отправлено: yankeenoobs от Январь 08, 2015, 03:28
Привет! Ситуация такая, я хочу применить к N кол-ву QWebView N кол-во проксей в один и тот же момент, чтобы у каждого элемента QWebView  было открыто соединение через прокси. Делаю все это дело в цикле. Пробовал расписывать каждый QWebView и применение прокси к нему в ручную прописывая десяток строк, все пашет(десяток строк писался прямо в main функции), прокси везде разные и все робит, но через цикл никак не пашет как хотелось бы, результат такой что один прокси какой то применяется ко всем элементам(данный код выполняется в отдельной функции и вызывается как слот), код следующий
Код:
void MainWindow::show() 
{
            int n = ptr_Service->get_countProxy();
            QList<QWebView *> item_webview;
            item_webview.reserve(ptr_Service->get_countProxy());
            for(int i=0; i<n; i++)
            {
                item_webview[i] = new QWebView();
                QString ip = ptr_Service->getProxy_at(i).IP;
                int port = ptr_Service->getProxy_at(i).Port.toInt();

                QNetworkProxy proxy( QNetworkProxy::HttpProxy, ip, port);
                proxy.setCapabilities(QNetworkProxy::TunnelingCapability);
                QNetworkAccessManager *mg = new QNetworkAccessManager(item_webview[i]);
                mg->setProxy(proxy);
                item_webview[i]->page()->setNetworkAccessManager(mg);

                item_webview[i]->load(QUrl("http://2ip.ru/"));
                item_webview[i]->show();
                tabs->addTab(item_webview[i],"Tab "+QString::number(i));
            }
        }
    }
}
И еще как заставить загружаться страницу сразу после функции item_webview->load() , а то получается пока я на QTabWidget не кликну то QWebView в нем не загружает страницу. пока зайти на этот таб один раз.