C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[13351] Re:[질문] 프로그래스 바 사용에 관한
김백일 [] 1080 읽음    2001-12-04 21:44
궁금이 님이 쓰신 글 :
: 어떤 진행상황을 보고자 다음과 같이 했습니다.
:
:      ProgressBar1->Position = 0;
:      while(!TAlpa2001->Eof){
:        j++;
:        ProgressBar1->Position = (TProgressRange)((j/TAlpa2001->RecordCount)*100);
:        이런 저런 작업들...
:      }
:
: 그런데 프로그램을 실행시키면 다운될것 같이 멈추었다가
:
: 상황이 완료되면 프로그래스 바는 Max까지 되어있습니다.
:
: 프로그래스바가 점점 카운트되어 올라가는것을 볼수가 없네요.
:
: 어떻게 해야 될지..
:

이럴 경우는 쓰레드를 사용할 수 밖에는 없을 겁니다.
간단하게 대략의 과정을 말씀드리자면,
[File]-[New...]-[Thread Object]를 선택하여
TThread를 상속받은 스레드 객체를 만드신 후
위의 '이런 저런 작업'을 수행하는 기능을
스레드의 UpdateThread() 함수 안에 코딩하신 후,
위의 ProgressBar1->Position을 수정하는 코드도
같이 넣으시면 됩니다.
시간이 오래 걸리는 작업을 수행하실 때는 이렇게 꼭
스레드를 만들어서 수행하시고 진행상황을 '프로그레스 바'('래'가 아니라 '레'가 맞는 발음이지요!)
에 표시하시는 게 좋은 습관입니다.

자세한 설명은 쓰레드에 대해 설명한 책을 참고하세요.


+ -

관련 글 리스트
13341 [질문] 프로그래스 바 사용에 관한 궁금이 1088 2001/12/04
13364     Re:[질문] 프로그래스 바 사용에 관한 큐피리도 이니 1019 2001/12/05
13356     Re:[질문] ProgressBar바에서 일어 나는 작업을 Thread로 하시면 될듯(냉무) 제라툴 981 2001/12/04
13351     Re:[질문] 프로그래스 바 사용에 관한 김백일 1080 2001/12/04
13350     Re:[질문] 프로그래스 바 사용에 관한 방태윤 896 2001/12/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.