2017年5月16日火曜日

[Qt]Qt初心者あれこれ

[共通] 当 Blog の投稿に関する基本事項について
→ http://fuunyan.blogspot.jp/2012/09/blog.html


次の案件で利用することになりそうな Qt に関する各種メモ

探し方が下手なのかもしれないが、よくある環境構築から実際に実装するまでを説明しているサイトが見当たらなかったので、自分メモを兼ねて公開予定。


Qt公式
https://www.qt.io/jp/
公式の日本語サイト
なお見に行けばわかることなのですがトップ以外は全部英語です。

日本 Qt ユーザー会
qt-users.jp
よくあるユーザー主導の情報源
ただしこのサイトIE11だと表示できない(アドレスバーの検索機能が影響?)
Qt Account のプロフィール画面の挙動もおかしいのでChrome利用推奨?
レイアウトがおかしい場合は画面サイズを変更後、リロードすると直る可能性あり。


ダウンロード
https://www.qt.io/download-open-source/ からインストーラーをダウンロードする。
ありがたいことに自動的にプラットフォームの解析をして適切なインストーラーを選定してくれる。
Windowsの場合は Recommended download が Qt Online Installer for Windows になっているはず。
もし違っている場合は、同ページ下部にある Not the download package you need? View All Downloads を選択して、表示されたリンク群の中から Qt Online Installer for Windows を選択する。

この投稿を書いているときにダウンロードした版は以下の通り。
qt-unified-windows-x86-2.0.5-2-online.exe


インストール
ウェルカム曰く


Welcome to the Qt online installer.
This installer provides youwith the option to download either an open source or commercial version of Qt.
Commercial users: Please log in with your Qt Account credentials.
Open source users: You have the option to log in using your Qt Account credentials(e.g. your Qt Forum login).
I you do not have a login yet, you have the option to create one in the next step.

Qtオンラインインストーラへようこそ。
このインストーラには、Qtのオープンソース版または商用版のいずれかをダウンロードするオプションがあります。
コマーシャルユーザー: Qtアカウントの資格情報でログインしてください。
オープンソースユーザー: Qtアカウントの資格情報(例:Qtフォーラムのログイン情報)を使用してログインするオプションがあります。
まだログインしていないので、次のステップで作成するオプションがあります。

ということなので作業を進める前にQtアカウントを作成
https://www.qt.io/qt-account/
パスワード条件は
・最低7文字
・メールアドレスまたは名前を入れることはできません。
・小文字、大文字、数字、記号の4つのタイプのうち少なくとも3つを含む必要があります。
・利用可能文字:a-z, A-Z, 0-9, 半角空白, 記号 !"#/()=?@${[]}\,.-_<>|;:'*^~+
登録後、程なくして確認メールが届くので本文内にあるリンクにアクセスして本登録を完了する。

インストーラーに戻ってユーザー名とパスワードを入力するとライセンス状況を確認してくれてオープンソース版のインストールが自動的に始まる。

準備のダウンロード?などが完了するとインストール先を聞かれるので、指定して先に進める。
同画面にあるチェックボックスはファイルの関連付けをするか否かの確認。

次にインストールするコンポーネントの選択。
初期状態でいくつか選択されている。
それらを尊重しつつ最新版だけを残すようにした(Beta版とかいらないし、版毎の微妙な変更点を気にするレベルでもないですし)
結果、以下のものを選択(選択解除不可能なものは記載除外)
+Qt 5.8
 +MinGW 5.3.0 32bit
 +WinRT x64 MSVC2015)
 +WinRT x86 MSVC2015)
 +msvc2015 32-bit
 +msvc2015 64-bit
 +Qt Charts
 +Qt Data Visualization
 +Qt Purchasing
 +Qt Virtual Keyboard
 +Qt WebEngine
 +Qt Gamepad (TP)
 +Qt Network Auth (TP)
 +Qt Speech (TP)
 +Qt Script (Deprecated)

あとはライセンスへの同意とかスタートメニューへの登録とか。

開始するとインストールするコンポーネントのダウンロードが開始される。

~ 待機・・・完了。


Hello world(準備編)
とりあえずVisualStudioな気分でプロジェクトを作って Hello world 的なものを完成させてみる。

メニューから「ファイル/プロジェクトの新規作成...」を選択。
左側の「プロジェクト」から「アプリケーション」を選択。
すると中央に関連プロジェクトが表示される(はず)
中央の「Qt ウィジェットアプリケーション」を選択して「選択」ボタンを押下。

「Qt ウィジェットアプリケーション」ダイアログでプロジェクトの設定を行う。
パス
「名前」にはプロジェクト名を入力。
「パス」にはプロジェクトの格納先を入力。
VisualStudio的な表現をするとソリューションフォルダーは作られないので、そのような管理をしたい場合は考慮したフォルダー名を指定する。
⇒プロジェクト名でフォルダーが作成される様子
キット詳細概要についてはデフォルト値のまま(よくわからないまま変更したら大変なことになる)


Hello world(実装編)
左側のプロジェクトツリーから「フォーム」配下にあるmainwindow.ui をダブルクリックしてウィンドウデザインを表示する。
「ウィジェットボックス」(ツールのある枠)の中から
・Buttons グループ内にある Push Button
・Display Widgetes グループ内にある Label
をウィンドウ上に DnD する。

ウィンドウ上に配置した Push Button を選択し、右クリックメニューより「スロットへ異動...」を選択する。
すると「スロットへ移動」ダイアログが表示される(いわゆるイベント一覧)
リストの一番上にある clicked() を選択して OK 押下。
自動的に mainwindow.cpp が開かれ on_pushbutton_clicked() イベントが追加される。

イベントのコードとして以下を追加。
余談:予測リストの確定は enter でできる
void MainWindow::on_pushButton_clicked()
{
    ui->label->setText("hello world");
}
あとはビルド(ctrl + B)して実行(ctrl + R)すればウィンドウが表示されます。
ボタンを押下するとラベルに hellow world が表示されるはずです。

しかしメモのつもりだったのにしっかり投稿記事にしてしまったw

0 件のコメント:

コメントを投稿