コンボ ボックスを作成する
SFRComboboxControl を使って、コンボ ボックスを作成します。
SFMTYPEDEFCLASS(UserClass) class UserClass : public SFRPlainWindow { // コンストラクタなどは省略 private: Void Main (Void); HANDLER_DECLARE_VOIDCONTROL(ComboboxHandler) }; // コンボ ボックスを作成する(エラー処理は省略) Void UserClass::Main(Void) { SFRComboboxControlPtr combobox; SFXWideString item[] = {"item1", "item2", "item3"}; combobox = new SFRComboboxControl(window, SFXRectangle(5, 5, 48, 16), item, lengthof(item)); combobox->RegisterHandler(SREVT_CONTROL, HANDLER_BEFORE, HANDLER_FUNCTION(ComboboxHandler)); // item1 のアイテム項目にアクセスキーを設定する combobox->SetAccessKey(0, AVK_1, 0x69F7); // コンボ ボックスの色を設定する // 設定しない場合はデフォルトの色になる combobox->SetColor(SFRComboboxControl::COLOR_BUTTON_LIGHT, SFXRGBColor(0x99, 0x99, 0x99, 0x00)); combobox->SetColor(SFRComboboxControl::COLOR_BUTTON_BASE, SFXRGBColor(0x66, 0x66, 0x66, 0x00)); combobox->SetColor(SFRComboboxControl::COLOR_BUTTON_SHADOW, SFXRGBColor(0x33, 0x33, 0x33, 0x00)); combobox->SetColor(SFRComboboxControl::COLOR_BUTTON_TITLE, SFXRGBColor(0xBB, 0xBB, 0xBB, 0x00)); combobox->SetColor(SFRComboboxControl::COLOR_MENU_LIGHT, SFXRGBColor(0x99, 0x99, 0x99, 0x00)); combobox->SetColor(SFRComboboxControl::COLOR_MENU_BASE, SFXRGBColor(0x66, 0x66, 0x6, 0x006)); combobox->SetColor(SFRComboboxControl::COLOR_MENU_SHADOW, SFXRGBColor(0x33, 0x33, 0x33, 0x00)); combobox->SetColor(SFRComboboxControl::COLOR_MENU_TITLE, SFXRGBColor(0xBB, 0xBB, 0xBB, 0x00)); return; } // コンボ ボックス ハンドラ( メニューが選択されたときに起動する ) HANDLER_IMPLEMENT_VOIDCONTROL(UserClass, ComboboxHandler, result, control) { ...... return; }