MFC - ComCtrl::ProgressBar
MFCはWin32 SDKレベルのプログラミング手法に
C++の概念を取り入れた
アプリケーションの作成を容易にするクラスライブラリ。
※Borland社コンパイラ付属の OWL:Object Window Libraryに相当。
プログレスバーの利用方法
ここでは、基本(コモン)コントロールのプログレスバーの利用方法について 記述します。
プログレスバーコントロール
リソースエディタにて、CProgressCtrlを追加
メンバ変数を登録することで利用可能となります。
以下実行イメージです。
プログレスバーコントロール実装方法
ビュークラスのヘッダーファイルに
メンバー変数が追加されていることを確認します。
file:FormViewView.h
public: public CProgressCtrl m_Progress; private: int counter; // プログレスバー試験用カウンタ値 UINT m_Timer; // タイマー用
file:FormViewView.cpp
例 前例のボタンクリックの処理に以下のような記述を追加します。
void CFormViewView::OnClickedButton() {
counter = 1;
m_Progress.SetRange(0, 100);
m_Progress.SetPos(counter);
m_Progress.SetStep(1);
m_Timer = SetTimer(1, 200, NULL);
}
void CFormViewView::OnTimer(UINT_PTR nIDEvent) {
if(counter > 0) {
counter++;
m_Progress.SetPos(counter);
if(counter > 100) {
counter = 1;
m_Progress.SetPos(counter);
}
}
CFormView::OnTimer(nIDEvent);
}
void CFormViewView::OnDestroy() {
CFormView::OnDestroy();
KillTimer(m_Timer);
}