open-mgl-dev (開発バージョン) (0.7.9.80) | 2009-11-02 22:25 |
open-mgl (DirectX9, VC++2008) (0.7.9) | 2009-09-27 20:32 |
roast-dev (開発バージョン) (0.0.1.40-dev) | 2009-11-02 23:09 |
>Wikiトップ>August Framework 2.0>AF2_tutorial8
- #include "mglaugust2.h"
- class CMyFrame : public CAugustWindowFrame2
- {
- public:
- // 初期化時に呼ばれる
- bool OnGraphicInitEnded()
- {
- return true;
- }
- // ウインドウ生成前に呼ばれる
- void OnCreateWindow(agh::CREATE_WINDOW_INFO *pWindowInfo){
- pWindowInfo->nWinWidthSize = 800;
- pWindowInfo->nWinHeightSize = 600;
- pWindowInfo->strWindowTitle = "タイトルを変更";
- }
- };
- // WinMain
- int APIENTRY WinMain(HINSTANCE hInstance,
- HINSTANCE hPrevInstance,
- LPSTR lpCmdLine,
- int nCmdShow )
- {
- CMyFrame frame;
- frame.Start();
- return 0;
- }
こんな感じです。OnCreateWindow() と言うメソッドをオーバーライドします。
画面のタイトルや、ウインドウのサイズを変更する事が出来ます。
ちなみにウインドウタイトルは途中で変更する事も出来ます。(他は無理)
チュートリアル 6 と組み合わせるとこんな事も出来ます。
- #include "mglaugust2.h"
- #define TITLE "これは、流れるタイトルです。 ⊂二二二(^ω^)二⊃ ブーン "
- class CMyFrame : public CAugustWindowFrame2
- {
- private:
- int m_nCounter;
- char m_szTitle[256];
- public:
- // 初期化時に呼ばれる
- bool OnGraphicInitEnded()
- {
- m_nCounter = 0;
- strcpy(m_szTitle, TITLE);
- return true;
- }
- // ウインドウ生成前に呼ばれる
- void OnCreateWindow(agh::CREATE_WINDOW_INFO *pWindowInfo){
- pWindowInfo->strWindowTitle = TITLE;
- }
- bool OnFrameDoUser()
- {
- if ( m_nCounter >= 10 )
- {
- *(m_szTitle+strlen(m_szTitle)+2) = '\0';
- strncpy(m_szTitle+strlen(m_szTitle), m_szTitle, 2);
- memmove(m_szTitle, m_szTitle+2, strlen(m_szTitle));
- SetWindowTitle(m_szTitle);
- m_nCounter = 0;
- }
- m_nCounter++;
- return true;
- }
- };
- // WinMain
- int APIENTRY WinMain(HINSTANCE hInstance,
- HINSTANCE hPrevInstance,
- LPSTR lpCmdLine,
- int nCmdShow )
- {
- CMyFrame frame;
- frame.Start();
- return 0;
- }
OnFrameDoUser() 内にて SetWindowTitle() メソッドを用いて変更しています。
まぁくだらないサンプルですが・・・