2011-03-02 10 views
0

VB6 사용연속 진행 표시 줄

코드 실행 시간 동안 연속 진행률 표시 줄을 표시하려고합니다.

진행률 표시 줄을 계속 실행해야합니다. 코딩 프로세스가 완료되면 진행 과정이 보이지 않아야합니다.

어떻게 지속적으로 진행 표시 줄

VB6 코드 도움을 필요에 대한 코드를 만들려면

+2

버전 6 (Windows XP 사용)까지 "선택 윤곽"스타일이 공용 컨트롤 진행률 막대에 도입되지 않았습니다. 이전 운영 체제를 지원할 필요가없는 한 VB 6에서이 스타일을 사용하는 것이 비교적 간단합니다. 그렇지 않으면이를 처리 할 사용자 지정 논리를 작성해야 할 것입니다. –

답변

1

이 VB6가 단일 스레드이기 때문에 당신이 지속적으로 코드를 실행 한 경우 할 까다 롭습니다.

나는 자신을 (색깔이있는 배경으로 레이블 컨트롤의 너비를 설정하는)이 작업을 시도했지만 GUI가 다시 그려지지 않는 경향이있다. 나는 작업을 섹션으로 나눠 끝내고 각 섹션의 끝에 DoEvents을 호출했다. GUI 업데이트는 다소 거친 것이 었습니다.

VB6에서 여러 스레드를 실행하는 방법이 있지만 매우 조심해야합니다. 한 스레드에서 코드를 실행하고 다른 스레드에서 GUI를 업데이트 할 수 있습니다.

+0

내 머리 꼭대기에서 '타이머'컨트롤을 사용하는 것이 옳은 결정이라고 말하고 싶습니다. 각각의'Tick' 이벤트에서 GUI를 업데이트합니다. VB 6에서 여러 스레드를 사용하는 것보다 훨씬 쉽습니다. 그것은 악몽입니다. 정말 스레딩이 필요한 경우 전체 프로젝트를 포팅하는 것이 좋습니다. –

+0

'Timer' 컨트롤을 사용하면 완전히 이벤트 중심의 프로그램을 만들 수 있습니다. 타이머 이벤트는 다른 모든 이벤트와 인터리빙됩니다. 그러나 코드를 계속 실행중인 경우 코드가 완료 될 때까지 모든 이벤트가 보류 중입니다. – quamrana

0

전통적으로 우리는 애니메이션 컨트롤을 사용 했습니까? 확실하지는 않지만 자체 스레드에서 실행된다고 생각합니다. 그런 다음 애니메이션 된 GIF를 표시하는 "chromeless"사용할 수있는 WebBrowser 컨트롤이 있습니다.

Windows Movie Maker도 애니메이션 된 GIF를 AVI로 변환하는 데 사용할 수는 있지만 관련 사항에는 제한이 있습니다. 모래 시계 커서가 충분히 좋지 않으면, 이발사 기둥, "사일런의 눈", 떨어지는 픽시 먼지 또는 다른 "바쁘다"표시기를 쉽게 만들 수있는 것 같습니다.

코디 그레이의 연회실 스타일 ProgressBar가 좋은 제안이었습니다.