What is it, naokirin?

Qt触ってみた (1)

「Qt触ってみた」ということで記事書いてみることにしました。

まだまだ初心者なのであんまり難しいことは書けないですが、頑張っていきます。


まずはインストールから始めます。
Windowsならかなり簡単で、このページからダウンロードしてインストーラに従ってインストールするだけ。

Visual Studio 2008ならビルド済みインストーラがあるのでそちらも簡単にインストールできます。
同じページの下の方にあるVisual Studioのadd-inも一緒に入れることをお勧めします。

ちなみにダウンロードのページを見ての通り、無償版はLPGLライセンスであることには注意すべきです。
個人的な利用の場合は良いですが、公開する場合などは注意しましょう。(たまに企業などでライセンスは問題になったりしてます。)


さて、早速ですが一番簡単なGUIアプリケーションを作ってみます。

#include <QApplication>
#include <QMainWindow>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QMainWindow w;
    w.resize(300, 200);
    w.show();
    return a.exec();
}

このコードは300×200ピクセルのウィンドウを表示するだけのものですが、これがQtでのGUIアプリケーション作成の基本になります。コードの内容を少し説明していきます。

QApplication a(argc, argv);

アプリケーションを生成します。これはQtアプリケーションの作成には必須となります。ちなみにargcとargvにはmain()関数の引数を渡します。

QMainWindow w;

ここでメインのウィンドウを作ります。

w.resize(300, 200);

ウィンドウの初期サイズを300×200ピクセルにします。

w.show();

ウィンドウを表示します。

return a.exec();

QApplication::exec()を呼び出すことでアプリケーションのイベント処理などが実行されるようになります。


そういうわけで何もないウィンドウを表示するだけのGUIアプリケーションができました。

ちなみにここまでのコードはQtに対応したIDEを使っている(Qt CreaterやVisual StudioでQt Applicationプロジェクトを作成した)場合、(resize()の部分は除いて)自動生成されます。
ただ自動生成されたコードはデフォルトのQMainWindowクラスのウィンドウではなく、自分でカスタムするためのQMainWindowを継承したクラスを使っています。

他のページにも書いてあるようなことですが、このブログは私が頭の中の情報を整理したいことが基本的な目的なのでお許しください。