본문 바로가기

C#.NET

Progress Bar

Progress Bar

대용량 파일을 다운로드 받거나 대량의 데이터를 복사할 경우와 같이 많은 시간이 소요되는 일련의 작업이 진행되는 동안 아무런 진행과정을 표시하지 않으면 사용자 입장에서는 작업이 제대로 처리되고 있는지 의구심이 생기게 된다. 그러므로 작업의 진행경과를 사용자가 이해하기 쉽도록 막대 그래프 형태로 보여주기 위한 Control로서 표현한다.

 

주요속성

Minimum

최소 시작값

Maximum

종료 값(최대값)

Step

한 번 호출 될 때마다 증가될 값, PerformStep() 메서드와 함께 쓰임.

Value

현재 작업 진행 정도

Style

막대그래프의 모양 지정,

Blcok: 여러 개의 사각형(Default 값)

Continuous: 꽉 찬 사각형

Marquee : 좌에서 우로 작은 막대기를 계속 스크롤.

작동원리

총 작업시간의 범위는 Minimum과 Maximum으로 지정

작업의 진행 정도는 Value속성으로 결정(Value값이 minimum값과 같다면 이제 막 작업이 시작된 것을 의미한다.)

 

실습예제

  • 우선 아래와 같이 새로운 Form 을 하나 생성하고, 'ProgressBar' & 'Label' & 'Button'을 생성한다.

  • 각 ProgressBar의 Style 속성에서 아래와 같이 해당 값(Block, Continue, Marquee) 지정.

 

  • 각 버튼에서 이제 아래와 같은 설정을 하여 준다.

ProgressBar1 버튼

private void button1_Click(object sender, EventArgs e)

{

for (int i = 0; i < 100; i++)

{

progressBar1.Value = i;

 

/*버튼을 누를 때 마다 0.1초마다 반복되는 작업을 나타내기 위해서

* Thread.sleep()메서드를 이용 */

Thread.Sleep(100);

}

MessageBox.Show("Progressbar1 작업완료");

//progressbar1을 초기화해줌

progressBar1.Value = 0;

}

 

'C#.NET' 카테고리의 다른 글

클래스 멤버로의 접근제한하기  (0) 2009.05.08
NotifyIcon  (0) 2009.05.08
트리뷰(TreeView)  (0) 2009.05.07
List View  (0) 2009.05.07
DateTimePicker_Control  (0) 2009.05.06
MDI Form 생성하기  (0) 2009.05.06
Windows Form - 5월6일  (1) 2009.05.06
소설 같은 C# Chapter 3  (0) 2009.04.30
0428 C# (초급)실습예제들  (0) 2009.04.28
Chapter02 C# Language  (0) 2009.04.28