ホーム > デベロッパ > SophiaFramework > BREW C++ 逆引きコード集

BREW C++ プログラミング : SophiaFramework 逆引き FAQ・コード集

ボタンを作成する

SFRButtonControl を使って、ボタンを作成します。

SFMTYPEDEFCLASS(UserClass)
class UserClass : public SFRPlainWindow {
  // コンストラクタなどは省略
  private:
    Void  Main  (Void);
    HANDLER_DECLARE_VOIDCONTROL(ButtonHandler)
};

// ボタンを作成する(エラー処理は省略)
Void UserClass::Main(Void)
{
  SFRButtonControlPtr  button;

  button = new SFRButtonControl(window, 
                                SFXRectangle(5, 5, 48, 16), "sample");
  
  button->RegisterHandler(SREVT_CONTROL, HANDLER_BEFORE, 
                          HANDLER_FUNCTION(ButtonHandler));
  
  // ボタンの色を設定する
  // 設定しない場合はデフォルトの色になる
  button->SetColor(SFRButtonControl::COLOR_LIGHT, 
                   SFXRGBColor(0x99, 0x99, 0x99, 0x00));
  button->SetColor(SFRButtonControl::COLOR_BASE, 
                   SFXRGBColor(0x66, 0x66, 0x66, 0x00));
  button->SetColor(SFRButtonControl::COLOR_SHADOW, 
                   SFXRGBColor(0x33, 0x33, 0x33, 0x00));
  button->SetColor(SFRButtonControl::COLOR_TITLE, 
                   SFXRGBColor(0xBB, 0xBB, 0xBB, 0x00));
  
  return;
}

 // ボタン ハンドラ ( ボタンがリリースされたときに起動する ) 
HANDLER_IMPLEMENT_VOIDCONTROL(UserClass, ButtonHandler, result, control)
{

   ..............

   return;
}