본문 바로가기

기타/MFC

MFC에서 Progress Bar 사용하기

1. 메인 윈도우 얻어서 Progress Bar 사용
CWinApp *pApp = (CWinApp *)AfxGetApp();
CWnd *pWnd = pApp->GetMainWnd();

CProgressCtrl *barCtl = (CProgressCtrl *)pWnd->GetDlgItem(IDC_PROGRESS1);
barCtl->SetPos(10);

-> 같은 방법으로 다른 컨트롤도 접근해서 사용가능 하다

2. DDX_Control을 이용하여 변수선언하여 사용
~~.h
public:
 CProgressCtrl barCtl;

~~.cpp
void ~~::DoDataExchange(CDataExchange* pDX)
{
DDX_Control(pDX, IDC_PROGRESS1, barCtl);
}

void ~~::~~()
{
barCtl.SetRange(0,300); //프로그레스바의 범위를 0에서 300으로 설정
barCtl.SetPos(300);      //프로그레스바의 처음 값을 300으로 설정
SetTimer(1,1000,NULL); //대부분 SetTimer함수를 이용하여 프로그레스바를 사용한다.
}

void ~~::~~OnTimer(UINT_PTR nIDEvent) //Timer 이벤트를 사용했을 경우
{
barCtl.OffsetPos(-1); //프로그레스바 1씩 감소
}

'기타 > MFC' 카테고리의 다른 글

MFC에서 현재 시간  (0) 2009.05.27