WikiトップAugust Framework>AF_チュートリアル6

August Framework : チュートリアル 6 ~ テキストを表示させる

(本項で説明する機能は ver 0.7.2 以降でのみ使えます。)

前回

  1. #include "stdafx.h"
  2. class CMglTestFrame : public CMglguiWindow
  3. {
  4. private:
  5. CMglAghImage m_img;
  6. CMglAghText m_text;
  7. public:
  8. // 初期化時に呼ばれる
  9. void OnInit(){
  10. m_img.Load("test.jpg");
  11. CMglguiWindow::RegistControl(&m_img);
  12. CMglguiWindow::RegistControl(&m_text);
  13. m_text.SetOption( AGH_FONT_OPTION_BOLD | AGH_FONT_OPTION_UNDERLINE );
  14. m_text.SetFontName( "MS Pゴシック" );
  15. m_text.SetFontSize(28);
  16. m_text.SetPos(20,380);
  17. m_text.SetColor(AGHCOLOR_ARGB(120,180,180,255));
  18. m_text.SetText("テストです。\n改行も出来ます。");
  19. }
  20. };
  21. // WinMain
  22. int APIENTRY WinMain(HINSTANCE hInstance,
  23. HINSTANCE hPrevInstance,
  24. LPSTR lpCmdLine,
  25. int nCmdShow )
  26. {
  27. CMglTestFrame frame;
  28. frame.Start();
  29. return 0;
  30. }

CMglAghImage の場合、Load()を呼んでから RegistControl() しますが、CMglAghText の場合は RegistControl() してから各種Set系メソッドを呼び出します。
ちょっとした諸事情によりこのような仕様になっています。あらかじめご了承ください・・・。

m_text の Set~() は、SetText()以外無くても動きます。無い場合は全てデフォルトです。
デフォルトのフォントはMS Pゴシック、サイズが12、色は黒です。

tutorial6a.jpg

これまたさり気なく、m_text.SetColor()にてしれっと使っている AGHCOLOR_ARGB()。色指定のためのマクロです。
4つの引数が指定されていますが、左から、アルファ値、赤、緑、青です。それぞれ最大255です。
アルファ値と言うのは不透明度で、0に近づくにつれて透明になっていきます(0で完全なる透明)。
赤、緑、青については”光の三原色”という奴です。知らない人は適当にぐぐってみてください。

他にも AGHCOLOR_WHITE で、白を指定、みたいな事も出来ます。詳しくは AGHCOLOR系マクロ の方に書かれているので、そちらを参照してください。