.uiファイルから画面を表示してみる

Qt libraries 4.8.4 for WindowsをインストールしたらDesignerが同梱されていた*1。折角なのでQyotoからDesignerで作成した画面定義ファイル(.ui)からWindowが表示できないか試してみた。

結果、以下のようなコードで表示できた。QUiLoaderを使ってるだけです。QtUiToolsを参照に追加すればOK。(Qyotoのqyoto-qtuitools.dll, qyoto-qtuitools-native.dll, smokeqtuitools.dllの3つ。Qt自体のDLLは追加不要)

using System;
using QtCore;
using QtGui;
using QtUiTools;

namespace QyotoSample
{
    class MainClass
    {
        [STAThread]
        public static int Main(string[] args)
        {
            new QApplication(args);

            var loader = new QUiLoader();
            var widget = loader.Load(new QFile("main.ui"));
            widget.Show();

            return QApplication.Exec();
        }
    }
}

*1:http://densan-labs.net/tech/qt/chapter5.html にDesignerの解説あり