#include "mainwindow.h" #include "ui_mainwindow.h" #include #include class QNetworkReply; namespace yremote { MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); manager = new QNetworkAccessManager(this); setFixedSize(size()); } MainWindow::~MainWindow() { delete ui; } void MainWindow::func() { QNetworkAccessManager *manager = new QNetworkAccessManager(this); connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*))); manager->get(QNetworkRequest(QUrl("http://qt-project.org"))); } void MainWindow::on_btn_onoff_clicked() { qDebug() << "void MainWindow::on_btn_onoff_clicked()"; sendCommand("GetParam"); } QString MainWindow::sendCommand(QString cmd) { QString res; QNetworkRequest request; request.setUrl("http://" + mAddress + ":80/YamahaRemoteControl/ctrl"); request.setRawHeader("Content-Type", "text/xml; charset=UTF-8"); request.setRawHeader("Content-Length", QByteArray::number(cmd.size())); QNetworkReply *reply = manager->post(request, cmd.toUtf8()); QEventLoop loop; connect(reply, SIGNAL(finished()), &loop, SLOT(quit())); loop.exec(); qDebug() << reply->readAll(); return res; } void MainWindow::on_txt_address_textEdited(const QString &arg1) { mAddress = arg1; } }