VS2008Express+Qt4.7.1:開発メモ1
Visual Studio 2008 Express Edition + Qt4.7.1でソフト開発を試みています。
Expressはアドインに対応していないせいもあり私にとってはかなり難解です。
例題のあるサイトはたくさんありますが同じ環境でのビルド方法の詳細まで
書かれているサイトはなかなかないように思われます。
(全部無料ですませようという考えが甘いのでしょうか。。。)
ようやく既存の例題などを少し改造できました。
Expressはアドインに対応していないせいもあり私にとってはかなり難解です。
例題のあるサイトはたくさんありますが同じ環境でのビルド方法の詳細まで
書かれているサイトはなかなかないように思われます。
(全部無料ですませようという考えが甘いのでしょうか。。。)
ようやく既存の例題などを少し改造できました。
「左図」
あるサイトで紹介されていたOpenGLの例題を少し改造したものです。
オリジナルのソースはウィンドウに直接OpenGL画面がのっていましたが
ここでは一度ウィンドウを定義してその上にOpenGL描画をのせました。
「右図」
Qt例題のgrabberでメニューに「Stop Rotate」を追加して
歯車の回転を止める機能をつけました。
Stop Rotateを押した時に回転角の増分が「0」になるようにしただけです。
まだ模索中ですが現段階で分かったことです。
・「Q_OBJECT」を含むコードはmoc (Meta-Object Compiler) を使って
実装されるので そのままVisual Studioでビルドすると
最後のリンク部分でエラーが起きるようです。
mocによって生成される「moc_~.cpp」ファイルはQtプロンプトで
qmake -project(これは最初だけ?)
qmake -tp vc
を実行した時に自動的に作られるようです。
qmakeでできたvcprojファイルを開くとソリューションに新たに
Generated Filesとして「moc_~.cpp」ファイルが作成されています。
これでビルドすると上手くリンクしてくれてexeファイルが出来上がります。
問題は「Q_OBJECT」に関連する部分を追加や修正した場合は
一度VSを終了し、再度qmakeを行ってvcprojファイルを開かないと
追加、修正部分が反映されないようです。
面倒ですがこれを繰り返していけば自分の作りたいGUIが作成できそうです。
もっとスマートなやり方があったら是非ともコメントなどお願いします。
【スポンサードリンク】
あるサイトで紹介されていたOpenGLの例題を少し改造したものです。
オリジナルのソースはウィンドウに直接OpenGL画面がのっていましたが
ここでは一度ウィンドウを定義してその上にOpenGL描画をのせました。
「右図」
Qt例題のgrabberでメニューに「Stop Rotate」を追加して
歯車の回転を止める機能をつけました。
Stop Rotateを押した時に回転角の増分が「0」になるようにしただけです。
まだ模索中ですが現段階で分かったことです。
・「Q_OBJECT」を含むコードはmoc (Meta-Object Compiler) を使って
実装されるので そのままVisual Studioでビルドすると
最後のリンク部分でエラーが起きるようです。
mocによって生成される「moc_~.cpp」ファイルはQtプロンプトで
qmake -project(これは最初だけ?)
qmake -tp vc
を実行した時に自動的に作られるようです。
qmakeでできたvcprojファイルを開くとソリューションに新たに
Generated Filesとして「moc_~.cpp」ファイルが作成されています。
これでビルドすると上手くリンクしてくれてexeファイルが出来上がります。
問題は「Q_OBJECT」に関連する部分を追加や修正した場合は
一度VSを終了し、再度qmakeを行ってvcprojファイルを開かないと
追加、修正部分が反映されないようです。
面倒ですがこれを繰り返していけば自分の作りたいGUIが作成できそうです。
もっとスマートなやり方があったら是非ともコメントなどお願いします。
【スポンサードリンク】
スポンサーサイト