Qt 導入手引書
(Windows - Visual Studio 用)
2013
年 8 月 9 日
第 10 版
株式会社 SRA
目次
1 Qt のインストール ... 3 1.1 インストール準備 ... 4 1.2 インストール手順 ... 5 1.3 インストールファイル ... 18 1.4 アンインストール手順 ... 21 2 Qt の簡単な使い方 ... 22 2.1 サンプルプログラムの実行方法 ... 22 2.2 開発手順 ... 26 3 Qt を習得するには ... 40 3.1 Qt に付属する情報 ... 40 3.2 Qt に関する書籍 ... 42 3.3 Qt の情報源 ... 43 改訂履歴 ... 443
1 Qt
のインストール
のインストール
のインストール
のインストール
この文書では、以下の環境にQt のバイナリ版をインストールする手順について説明します。
OS Windows 7 + Service Pack 1
Compiler Visual Studio 2010 + Service Pack 1
Qt Qt 5.1.0 (qt-enterprise-windows-x86-1.4.0-1-online.exe)
上記以外の環境や、Microsoft の他のコンパイラ(Visual Studio 2012 用)の場合も、同様の 手順でインストールできます。 Qt に付属する統合環境である Qt Creator でデバッグを行う場合は、別途 Windows 用デバ ッグツールのインストールが必要です。Windows 用デバッグツールの入手に関しては下記 のURL を参照してください。 http://msdn.microsoft.com/ja-jp/library/windows/hardware/gg463009.aspx なお、仮想環境ではOpenGL の動作に問題がある可能性が高く、Qt Quick 2 が正常に動作 しない場合やアクセラレーションが有効にならずに非常に遅くなる場合があります。その ため、仮想環境へのインストールは推奨しません。 Qt のインストール前に下記の情報を参照してください。 Qt for Windows Requirements
http://qt-project.org/doc/qt-5.1/qtdoc/requirements-win.html
Windows で Qt に必要な環境の情報です。 Known Issues – Qt 5.1.0
http://qt-project.org/wiki/Qt510KnownIssues
Qt 5.1.0 の既知の不具合の情報です。 Qt Creator : Setting Up Debugger
http://qt-project.org/doc/qtcreator-2.7/creator-debugger-engines.html
1.1
インストール準備
インストール準備
インストール準備
インストール準備
インストールする前に、以下の手順にしたがって準備を行ってください。 (1) ユーザ権限の確認ユーザ権限の確認ユーザ権限の確認ユーザ権限の確認 Qt をインストールするには、アドミニストレータ権限が必要です。標準ユーザもしくは 制限ユーザの権限ではインストールできません。 (2) Qt の入手の入手の入手の入手 Qt のインストーラを、Digia 社のサイトからダウンロードして入手します。 Qt のインストーラのファイル名は、次のようになります。 qt-enterprise-windows-x86-1.4.0-1-online.exe (3) ライセンシーライセンシーライセンシーライセンシー名名名名、、、、ライセンスキーの確認ライセンスキーの確認ライセンスキーの確認ライセンスキーの確認 インストール時に、ライセンシー名およびライセンスキーを入力する必要があります。 次のような記述を含む案内メールが送られてきますので、Name および License Key を ご確認ください。(ライセンス情報)
Name: Taro Yamada
Company name: Software Research Associates, Inc., Japan Period: 2013/9/30
5
1.2
インストール手順
インストール手順
インストール手順
インストール手順
以下の手順にしたがって、Qt をインストールします。 (1) ライセンシー名とライセンスキーの入力ライセンシー名とライセンスキーの入力ライセンシー名とライセンスキーの入力ライセンシー名とライセンスキーの入力 ダウンロード済みのQt のインストーラをエクスプローラ上でダブルクリックします。し ばらくすると次のようにライセンス情報入力用ダイアログが表示されます。(以前に別の バージョンの Qt をインストールしていた場合などでライセンス情報(.qt-license ファイ ル)がホームディレクトリに存在する場合は表示されません。) 案内メールに記載されている情報はそれぞれ以下の項目に対応します。 ダイアログ ダイアログ ダイアログ ダイアログ 案内メール案内メール案内メール案内メール Licensee NameQt4 License Key Qt4 License key
Qt5 License Key Qt5 License key
(2) インストーラの起動インストーラの起動インストーラの起動インストーラの起動 ライセンス情報を入力後、セットアップウィザードが起動します。Firewall の内側など でプロキシーの設定が必要な場合は“Settings”ボタンを押下します。プロキシーの設定方 法については次ページに記載します。 プロキシーの設定が不要あるいは終了した後は、“Next”ボタンを押下します。ネットワ ークからインストール用データの情報の取得後、次の画面に移行します。
7 プロキシ プロキシ プロキシ プロキシーーーーの設定の設定の設定の設定 セットアップウィザードで“Settings”ボタンを押下すると設定用ダイアログが表示され ます。ここではプロキシーの設定とインストールリポジトリの設定が行えます。リポジ トリを変更するとインストールが行えなくなるため、変更は行わないでください。 ネットワークのアクセスにプロキシーの設定が必要な場合にはダイアログにしたがって 設定を変更します。システムの設定で問題ない場合には“System proxy settings”を、特 別な設定が必要な場合には“Manual proxy configuration”を選択して設定してください。 プロキシーの設定が終了後は“OK”を押下します。
(3) インストールパスの指定インストールパスの指定インストールパスの指定インストールパスの指定 ネットワークからインストール用データの情報の取得が完了すると、インストール先の フォルダを選択する画面が表示されます。インストール先を変更する場合は、スペース や漢字、ひらがななどが含まれていない任意のフォルダを指定してください。デフォル トのインストール先は以下の通りとなります。 なお、インストールするフォルダはアンインストール時にすべて消去されますので、必 要なデータなどのあるフォルダは指定しないようにしてください。 また、インストール時にヘッダファイル(*.h)やソースファイル(*.cpp)ファイルが Qt の統 合環境であるQt Creator に関連付けされます。この関連付けを行いたくない場合にはウ ィンドウ下側のチェックをはずしてください。 インストールするフォルダを確認し、“Next”ボタンを押下します。 項目 項目項目 項目 インストールするフォルダインストールするフォルダインストールするフォルダインストールするフォルダ Installation Folder C:¥Qt
9 (4) インストールコンポーネントの選択インストールコンポーネントの選択インストールコンポーネントの選択インストールコンポーネントの選択 インストール対象をチェックボックスで選択します。デフォルトでは各種環境向けの Qt 5.1.0 のバイナリと Qt Creator および MinGW がインストールされます。Qt のソースフ ァイルの追加や、Add-On モジュールのインストールが不要の場合には該当するコンポー ネントのチェックを変更してください。なお、Qt Creator の選択は解除できません。 デフォルトでは大量のパッケージがインストールされるため、インストールにかかる時 間やディスク容量の削減のために、インストールするパッケージをできるだけ少なくす ることを推奨します。選択可能なパッケージについては次ページに記載します。 インストール対象を確認し”Next”ボタンを押下します。
インストールコンポーネントの選択 インストールコンポーネントの選択 インストールコンポーネントの選択 インストールコンポーネントの選択 選択可能なパッケージは以下のとおりです。太字太字太字の項目はデフォルトでインストール対太字 象となっているパッケージです。 項目 項目項目 項目 備考備考備考備考 Qt Qt 5.1.0 msvc2010 32 bit Visual Studio 2010, 32 bit
msvc2010 32 bit OpenGL Visual Studio 2010, 32 bit, 要 OpenGL msvc2012 32 bit Visual Studio 2012, 32 bit
msvc2012 64 bit Visual Studio 2010, 64 bit
msvc2012 64 bit OpenGL Visual Studio 2010, 64 bit, 要 OpenGL MinGW 4.8(32 bit) MinGW 4.8 用, 32 bit, GCC
Android x86 Android(x86)用アプリ作成用 (テクノロジープレビュー版) Android armv7 Android(armv7)用アプリ作成用 (テクノロジープレビュー版) Source Components ソースコード(Qt 5.1.0) Qt 5.0.2 msvc2010 32 bit Visual Studio 2010, 32 bit
msvc2010 32 bit (OpenGL) Visual Studio 2010, 32 bit, 要 OpenGL msvc2012 64 bit Visual Studio 2010, 64 bit
MinGW 4.7 MinGW 4.7 用, 32 bit, GCC Source Components ソースコード(Qt 5.0.2)
Tools MinGW 4.7 Qt 5.0.2 MinGW 4.7 のインストールに必要 Qt Creator 選択解除不可能
MinGW 4.8 Qt 5.1.0 MinGW 4.8 のインストールに必要 Qt Enterprise
Add-ons
11 (5) ライセンス条項への同意の確認ライセンス条項への同意の確認ライセンス条項への同意の確認ライセンス条項への同意の確認
ライセンス条項に同意するかどうかの確認を求める画面が表示されます。ライセンス条 項をご確認の上、“I have read and agree to the following terms contained in the license agreements …”のラジオボタンが選択されるようにクリックして、“Next”ボタンを押下 します。
(6) スタートメニューの選択スタートメニューの選択スタートメニューの選択スタートメニューの選択
スタートメニューに表示するプログラムフォルダを選択するための画面が表示されます。 内容を確認し“Next”ボタンを押下します。
13 (7) インストールインストールインストールインストール開始開始開始開始
インストールの準備ができました。インストールの詳細を確認する場合には“Show
Details”ボタンを押下します。
(8) インストールインストールインストールインストール完了完了完了完了
インストール状況を示すプログレスバーを持つ画面が表示されます。プログレスバーが 進み、ダウンロードおよびインストールが完了するまで待ちます。
15
インストールが完了すると以下のようにインストール完了画面が表示されます。
“Finish”ボタンを押下すると、セットアップウィザードが終了し、Qt Creator(統合開発 環境)が起動し、Qt 5.1.0 の README.txt がメモ帳で表示されます。
(9) インストール後の環境インストール後の環境インストール後の環境インストール後の環境
インストールが正しく終了した場合、スタートメニューに“Qt Enterprise”という(あるい はインストーラで指定した)名前のアプリケーションメニューが登録されます。
ここでは、上記のメニュー内の以下の項目について説明します。
Qt Enterprise Maintenance Tool
17 (10) 環境変数の設定環境変数の設定環境変数の設定環境変数の設定 Qt を使用するにあたり、以下の環境変数を設定しておくと便利です。環境変数の設定方 法はプラットフォームに依存しますが、今回使用する環境(Windows 7)では、以下のよう に辿って設定してください。 “コントロールパネル”を起動して システムとセキュリティ → システム → システムの詳細設定 “システムのプロパティ”ウィンドウが表示され 詳細設定 → 環境変数 PATH Qt をインストールしたフォルダ以下の“bin”を既存の PATH に追加します。ここには Qt アプリケーションに必要な Qt のライブラリと、Qt アプリケーションを実装、ビルドす る際に必要となるツール類が格納されています。これを設定することで、エクスプロー ラ上からQt アプリケーション(Qt が提供するツールや例題アプリケーション、自身で実 装したアプリケーション等)を直接起動することができるようになります。
1.3
インストールファイル
インストールファイル
インストールファイル
インストールファイル
インストールされたファイルについて記載します。インストールに使用したQt のパッケー ジによらず共通なディレクトリと、パッケージごとに異なるディレクトリがあるため、そ れぞれについて代表的なものについてのみ記載します。 1.3.1 共通ディレクトリ共通ディレクトリ共通ディレクトリ共通ディレクトリ どのパッケージでインストールしても同じパスにインストールされます。インストール時 に選択したインストール先の直下にサブディレクトリとして作成されます。 (1) Licenses ディレクトリディレクトリディレクトリディレクトリ ライセンス条項を記述したテキストファイルが格納されています。 (2) Tools ディレクトリディレクトリディレクトリディレクトリ Qt の統合開発環境である Qt Creator が格納されています。 1.3.2 個別ディレクトリ個別ディレクトリ個別ディレクトリ個別ディレクトリ インストール時に選択したインストール先の下に“バージョン番号¥パッケージ種類”の形 式でディレクトリが作成され、その下にQt 本体がインストールされます。各パッケージの ディレクトリ名は以下の通りとなっています。 インストールした インストールしたインストールした インストールしたパッケパッケパッケパッケージージージージ ディレクトリ名ディレクトリ名 ディレクトリ名ディレクトリ名 msvc2010 32 bit msvc2010msvc2010 32 bit OpenGL msvc2010_opengl
19 assistant (ドキュメントブラウザ) designer (GUI レイアウトツール) linguist (ローカライズ支援ツール) qmake (ビルドルール生成コマンド) qmlviewer (Qt Quick 1 の開発用実行環境) qmlscene (Qt Quick 2 の開発用実行環境) lupdate (ローカライズ対象フレーズ抽出コマンド) lrelease (ローカライズファイルリリース用コンパイラ) lconvert (ローカライズファイル形式変換コマンド) moc (メタオブジェクトコンパイラ) uic (ユーザインタフェースコンパイラ) (2) examples ディレクトリディレクトリディレクトリディレクトリ サンプルプログラム(examples)が格納されています。 (3) doc ディレクトリディレクトリディレクトリディレクトリ Qt のドキュメントが格納されています。html サブディレクトリ以下に HTML 形式で格 納されています。 (4) include ディレクトリディレクトリディレクトリディレクトリ インクルードファイルが格納されています。include ディレクトリ以下は、モジュール毎 にサブディレクトリが作成・分類されています。 (5) lib ディレクトリディレクトリディレクトリディレクトリ アプリケーションのビルド時に必要なライブラリ等が格納されています。 (6) mkspecs ディレクトリディレクトリディレクトリディレクトリ プラットフォーム、コンパイラ固有の設定ファイルが格納されています。 (7) plugins ディレクトリディレクトリディレクトリディレクトリ プラグイン形式のライブラリが格納されています。プラグインの用途毎に格納されるサ ブディレクトリが分類されています。 (8) translations ディレクトリディレクトリディレクトリディレクトリ
Qt ライブラリ本体内で使用されているフレーズについての翻訳ファイルとロード可能モ ジュールファイルが格納されています。 (9) imports ディレクトリディレクトリディレクトリディレクトリ QML / Qt Quick 用コンポーネントが格納されています。 (10) qml ディレクトリディレクトリディレクトリディレクトリ QML / Qt Quick 用コンポーネントが格納されています。
21
1.4
アンインストール手順
アンインストール手順
アンインストール手順
アンインストール手順
アンインストールを行う方法として、以下の 2 通りの方法があります。アンインストール には、アドミニストレータ権限が必要です。標準ユーザもしくは制限ユーザの権限では、 アンインストールできませんのでご注意ください。 (1) スタートメニューから実行スタートメニューから実行スタートメニューから実行スタートメニューから実行 スタートメニューの「すべてのプログラム」からQt のアンインストーラを起動します。 スタート → Qt Enterprise → Uninstall Qt Enterprise アンインストーラが起動しますので、指示に従ってアンインストールしてください。 (2) コントロールパネルから実行コントロールパネルから実行コントロールパネルから実行コントロールパネルから実行 1. コントロールパネルから「プログラムのアンインストール」を開きます。 2. Qt Enterprise を選び、「アンインストール」ボタンを押します。 アンインストーラが起動しますので、指示にしたがってアンインストールしてください。2 Qt
の簡単な使い方
の簡単な使い方
の簡単な使い方
の簡単な使い方
ここでは、Qt を使用してのアプリケーション開発方法についてご説明します。まずは、付 属のサンプルプログラムの実行方法についてご説明します。その後、Qt API を使用した Qt アプリケーションの実装方法、ビルド方法、実行方法についてご説明します。2.1
サンプルプログラムの実行方法
サンプルプログラムの実行方法
サンプルプログラムの実行方法
サンプルプログラムの実行方法
Qt には数多くのサンプルプログラムが含まれています。Qt のインストール後、以下の方法 で付属のサンプルプログラムを実行することができます。 まずはスタートメニューからQt Creator を起動してください。23
ここでは”Application Example”を動かしてみます。”Application Example”を押下してくだ さい。
Application Example のドキュメントが表示されるので、左下の緑色の三角形の実行ボタン を押下します。
25
2.2
開発手順
開発手順
開発手順
開発手順
ここでは、Qt を使用したプログラム開発における手順について説明します。 Qt を使用したプログラムのソースファイルを作成し、ビルド、実行する一般的な手順は次 のようになります。 (1) プロジェクトの新規作成 (2) ソースファイルの作成・編集 (3) ビルド (4) 実行 この手順の例として、Qt を使用した簡単なプログラムを最初から作成してみます。ここで は、“Hello World!”と言う文字列が書かれたボタンを表示するプログラムを作成します。以 下で手順を説明します。27 (1) プロジェクトプロジェクトプロジェクトプロジェクトのののの新規新規新規新規作成作成作成作成 実行可能ファイルやライブラリ等を作成するための単位を“プロジェクト”と呼びます。プ ロジェクトは実装ファイルやヘッダファイル、リソースファイル等で構成されます。ま ずは、これらのファイルを格納するためのフォルダを作成します。 Qt Creator を起動し、“ファイル”メニューから “ファイル/プロジェクトの新規作成”を選 択します。
以下のダイアログが表示されますので、左の列から“プロジェクト”の“アプリケーション” を、中央の列からは“Qt GUI アプリケーション”を選択し、“選択”ボタンを押下します。
29 パス パスパス パス 以下のダイアログが表示されるため、プロジェクト名とプロジェクトを生成するディレ クトリを指定します。ここでは以下を入力します。 “パス”にはユーザのホームディレクトリが入力されていますので、今回はそのまま使用し ます。 それぞれ、任意のパスを指定していただいてかまいませんが、スペースや漢字、ひらが ななどASCII 以外の文字が含まれるパスは指定しないでください。 パスを確認したら“次へ”を押下します。 項目 項目項目 項目 値値値値 名前: Hello
キット キットキット キット “キット”とはコンパイル時に使用する Qt とコンパイラをセットとして環境として定義し たものです。複数のQt やコンパイラを使い分けする場合にキットを切り替えて使用しま す。この状況では(複数の Qt をインストールしていなければ)キットは一つしかないため、 そのまま“次へ”ボタンを押下します。 クラス情報 クラス情報クラス情報 クラス情報 生成するアプリケーションの形式を選択します。デフォルトではQMainWindow クラス が選択されています。QMainWindow クラスを使用することで本格的なデスクトップア プリケーションが容易に作成することができますが、今回は簡易なアプリケーションの 生成を目的とするため、“基底クラス”を“QWidget”に変更して、“次へ”ボタンを押下しま す。
31 プロジェクト管理 プロジェクト管理プロジェクト管理 プロジェクト管理 Subversion や git などのバージョン管理システムを使用している場合はここでリポジト リの生成などが行えます。今回は“<なし>”のまま“完了”ボタンを押下します。 (2) ソースファイルの作成・編集ソースファイルの作成・編集ソースファイルの作成・編集ソースファイルの作成・編集 プロジェクトが生成され、Qt Creator の画面がプロジェクトの編集画面に移行します。 初期状態ではwidget.cpp ファイルを開きます。
33
35
背景の Widget(グリッドが表示されている灰色の枠)をクリックして選択し、右クリック
37
(3) ビルドビルドビルドビルド
“ビルド”メニューから”すべてビルド”あるいは“プロジェクト “hello” をビルド”を選択し ます。
39 (4) 実行実行実行実行
サンプル実行時と同様に左下の緑色の三角形の実行ボタンを押下します。 以下のようなウィンドウが表示されます。
3 Qt
を習得するには
を習得するには
を習得するには
を習得するには
Qt には、アプリケーション実装の際に参考になるプログラムが多数含まれています。これ らに目を通しておくことで、アプリケーションを開発する際のヒントが得られます。また、 書籍として発行されている情報やQt Project のサイトにも開発の際に役に立つ多数のドキ ュメントが提供されていますので、ここではそれらの情報について記述します。3.1
Qt に付属する情報
に付属する情報
に付属する情報
に付属する情報
ここでは、Qt を導入するにあたり参考になるような情報として、Qt に付属しているサンプ ルプログラムやドキュメントについてご紹介します。 Qt 付属のサンプルプログラム Qt をインストールした個別ディレクトリ下の examples 以下に多数のサンプルプログ ラムが含まれています。これらはQt 個々の機能のサンプルプログラムであり、機能ご とに分かれて置かれています。 こ の 中 で も も っ と も 自 習 用 に お 勧 め の プ ロ グ ラ ム が チ ュ ー ト リ ア ル (examples/tutorial)です。Qt 付属のドキュメントにチュートリアルの解説があり、Qt Creator の起動直後の画面から表示できますので合わせてご参照ください。 Qt 付属のドキュメント Qt には、Qt Reference Documentation というオンラインマニュアルが付属していま す。次の二つのツールで参照できますが、内容は同じです。なお、Qt Reference Documentation および Qt Assistant のインストール先については、「1.3 インストール ファイル」をご覧ください。41
また、Qt Assistant は Qt Creator に組み込まれているため、Qt Creator からドキュ メントを参照することもできます。Qt Creator 起動後に、ウィンドウ左にあるサイ ドバーの“ヘルプ”を押下してください。
ウェブブラウザで表示
Qt Reference Documentation は HTML 形式ですので、ウェブブラウザを使用して 表示できます。index.html がトップページです。トップページの「Tutorial and Examples」というリンクをクリックすると、チュートリアルやサンプルプログラム の解説ページを辿ることができます。
3.2
Qt に関する書籍
に関する書籍
に関する書籍
に関する書籍
ここでは、Qt について記述されている書籍についてご紹介します。英語で記述されたもの と、その日本語訳の書籍があります。
『入門 Qt 4 プログラミング』(既刊、Qt 4.1 ベース)
Jasmin Blanchette, Mark Summerfield 著、 杵渕聡・杉田研治 訳、オライリー・ジャパン
Qt 4 向けの書籍ですが、第 5 刷以降では付録に「Qt 4 アプリーションの Qt 5 への
移行」を追記し、サンプルプログラムもQt 4 と Qt 5 の双方で動くように修正して
あります。
『実践 Qt 4 プログラミング』(既刊、Qt 4.3 ベース)
Jasmin Blanchette, Mark Summerfield 著、 山田亮介・杉田研治 訳、オライリー・ジャパン
『C++ GUI Programming With Qt 4 Second Edition』(既刊、洋書、Qt 4.3 ベース) Jasmin Blanchette, Mark Summerfield 著、Prentice Hall
『C++ GUI Programming With Qt 4』(既刊、洋書、Qt 4.1 ベース) Jasmin Blanchette, Mark Summerfield 著、Prentice Hall
43
3.3
Qt の情報源
の情報源
の情報源
の情報源
Qt Project の 公 式 サ イ ト (http://qt-project.org/) や Digia 社 の 公 式 サ イ ト (http://qt.digia.com/)に Qt の情報が集約されています。 Supported Platforms http://qt.digia.com/Product/Supported-Platforms/ プラットフォームに関する情報です。 FAQ http://qt-project.org/faq FAQ のページです。 Qt Bug Tracker http://bugreports.qt-project.org/ ユーザから報告のあった不具合や提案などの一覧があります。 Online Reference Documentation
http://qt-project.org/doc/ リファレンスマニュアルや各種ツール、定期刊行記事へのリンクがあります。 SRA のサイトにも Qt 関連情報を記載してあります。 Qt 関連情報 http://www.sra.co.jp/qt/relation/ Qt 関連書籍の紹介などを行っています。
改訂履歴
改訂履歴
改訂履歴
改訂履歴
日付 内容 2013 年 8 月 9 日 Qt 5.1.0 に対応 2009 年 12 月 25 日 Qt 4.6.0 に対応・商用版向けに共用化2009 年 10 月 6 日 Visual Studio Integration に関する記述を削除 2009 年 6 月 1 日 Qt 4.5.0 に対応 2008 年 7 月 25 日 Qt 4.4.0 に対応 2007 年 2 月 19 日 Visual Studio 2005 SP1 に関する注意事項を削除 2007 年 2 月 6 日 Visual Studio 2005 SP1 に関する注意事項を追加 2006 年 10 月 16 日 Qt 4.2.0 に対応 2006 年 9 月 10 日 インストール先のディレクトリ構成、アンインストール手 順を追加 2006 年 7 月 13 日 新規作成