- プログレスバーの使い方 -



≪ MFC・ダイヤログベースでの作成例 ≫


 ■ ダイヤログにプログレスパーを追加する



※サンプルではプログレスバーのIDを IDC_PROG とします




 ■ ClassWizardを呼び出しプログレスバーのメンバー変数の追加する


※サンプルでは、メンバー変数 m_ProgData を作成




 ■ OnInitDialog関数でプログレスパーの初期化をする
///////////////////////////////////////////////
// CTestDlg メッセージ ハンドラ

BOOL CTestDlg::OnInitDialog()
{
CDialog::OnInitDialog();

// "バージョン情報..." メニュー項目をシステム メニューへ追加します。

// IDM_ABOUTBOX はコマンド メニューの範囲でなければなりません。
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);

CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}

// このダイアログ用のアイコンを設定します。フレームワークはアプリケーションのメイン
// ウィンドウがダイアログでない時は自動的に設定しません。
SetIcon(m_hIcon, TRUE); // 大きいアイコンを設定
SetIcon(m_hIcon, FALSE); // 小さいアイコンを設定

// TODO: 特別な初期化を行う時はこの場所に追加してください。

//追加
m_ProgData.SetRange(0,100);
m_ProgData.SetStep(10);
m_ProgData.SetPos(50);

return TRUE; // TRUE を返すとコントロールに設定したフォーカスは失われません。
}

※SetRange関数はプログレスバーの範囲の設定 (引数2:左が最小値、右が最大値)
※SetStep関数はプログレスバーの増分値の設定 (引数1:増分値)
※SetPos関数はプログレスバーの現在値の設定 (引数1:現在値)




 ■ 以上コンパイルすると設定した値でプログレスバーが表示されます



※要所でSetPos関数を使えばプログレスバーを使ったプログラムが容易に出来ると思います