/////////////////////////////////////////
// スティタスバークラスCTBAR定義ファイル
/////////////////////////////////////////

class CSBAR : public CWND
{
public:		//メンバー変数

public:		//メンバー関数
	CSBAR();
	bool Init(HWND, HINSTANCE, int, DWORD);
	bool SetSection(int, int*);
	int GetText(int, LPCTSTR);
	bool SetText(int, LPCTSTR);
	bool AutoSize();
};

//コンストラクター(クラス設定とコモンコントロール初期化）
CSBAR::CSBAR() {

	m_lpClassName = STATUSCLASSNAME;	//ステータスバークラスの名称
	InitCommonControls();				//コモンコントロールの初期化
}

//スティタスバー作成･表示
bool CSBAR::Init(HWND hWnd, HINSTANCE hInstance,
				int ID,
				DWORD Style = WS_CHILD | WS_VISIBLE | SBARS_SIZEGRIP | SBT_TOOLTIPS) {

	return m_hWnd = CreateWindowEx(m_dwExStyle,
					m_lpClassName,
					NULL,
					Style, 0, 0, 0, 0,
					hWnd, (HMENU)ID, hInstance, NULL);
}

//スティタスバーの区分設定
bool CSBAR::SetSection(int w, int* wArray) {
	return SendMessage(m_hWnd, SB_SETPARTS, w, (LPARAM)wArray);
}

//スティタスバーの文字列設定
int CSBAR::GetText(int n, LPCTSTR str) {
	return LOWORD(SendMessage(m_hWnd, SB_GETTEXT, n | 0, (LPARAM)str));		//取得文字数を戻す
}

//スティタスバーの文字列設定
bool CSBAR::SetText(int n, LPCTSTR str) {
	return SendMessage(m_hWnd, SB_SETTEXT, n | 0, (LPARAM)str);
}

//サイズ自動調整
bool CSBAR::AutoSize() {
	return SendMessage(m_hWnd, WM_SIZE, 0, 0);
}
