2012-07-23 2 views
0

진행률 표시 줄이 있습니다. for 루프에서 값을 동일하게 업데이트하려고합니다. 어떻게 동등한 데이터 업데이트가 가능합니까?for 루프에서 진행률 표시 줄 업데이트

루프 카운트가 10이거나 카운트가 1000 인 경우 어떻게 자동화 할 수 있습니까?

참고로, 진척 바의 최소값은 0이고 최대 값은 당신은 당신의 데이터 크기에 맞게 진행 바의 최대 값을 조정할 수 있으며, 그에 따라 확장 할 수있는 100

답변

1

나누기,

double progress = (x/max) * 100; 

그러나주의 (100)에 의해 다음 여러 결과 최대 값과 (현실을 부르 자는 X) 그러면 부동 소수점이 아닌 정수 나누기가 끝납니다. 이 경우 한쪽 또는 양쪽을 double 또는 float로 캐스팅해야 할 수도 있습니다.

+0

@Joey : 그렇습니다. 제 답변에서 언급 한 것입니다. –

+0

잘라 내기를 피하려면'100 * x/max'를 사용하십시오. –

2

입니다 :

for (int i = 0; i < count; i++) { 
    // do something 
    progressBar1.Value = i * progressBar1.Maximum/count; 
    Application.DoEvents(); 
} 
x와 최대가에있는 경우 현재 값이 무엇이든