第四回 Qtの使い方講座
簡単なアプリを作ってみよう PartⅢ 今回の課題:QNetworkAccessManagerクラスを用いてシンプルブラウザを作ろう
Simple is the best!!! シンプルブラウザの大まかな仕様 アドレスをラインに入力する ボタンでアドレス先にジャンプする ページをテキストエディットに表示する Simple is the best!!!
必要となるクラス QNetworkAccessManager …ネットワークアクセスさせてくれます QWidget …QMainWindowを使うかはお好みで QTextEdit …HTML表示ができるのでここにページを表示 QLineEdit QPushButton
QNetworkAccessManagerクラス ネットワークにリクエストを送信し、リプライを受け取ることができる get()でGETメソッド、post()でPOSTメソッドでリクエスト リプライ受信が完了するとfinished(QNetworkReply*)シグナルが発信される
QNetworkAccessManagerクラス コード例 QNetworkAccessManager *manager = new QNetworkAccessManager(this); connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*))); manager->get(QNetworkRequest(QUrl("http://qt.nokia.com"))); 注意:プロジェクトファイルに下記の行を加えないとエラーを吐きます QT += network
方針 コンストラクタ ボタン接続スロット Manager接続スロット アドレスバーからURLを取得 QNetworkAccessManagerインスタンス managerを初期化、finishedシグナルと定義したスロットを接続 各GUIパーツ組み立て ボタン接続スロット アドレスバーからURLを取得 URLとmanagerを用いてリクエスト送信 Manager接続スロット ネットワークのリプライからテキスト読み込み(QNetworkReply::readAll()) テキストをTextEditにセット