모두의 프린터는 어떠한 경우에도 회원가입, 카드결제를 요구하지 않습니다.

[Go언어 윈도 GUI] walkmgr 에 Progress Bar 추가

walkmgr 에 progress bar 기능 추가했습니다. walkmgr_example 저장소에도 예제 적용 되었습니다.

설치나 다운로드시에 진행률을 표시할때 사용하기 좋은 기능입니다. walk 에 기본 내장되어 있었으나 제가 사용빈도가 거의 없어서 추가하지 않았던 기능인데.. 필요하시다는 분들이 계셔서 추가 했습니다.

Go
package main

import (
	"testing"
	"time"

	"github.com/pirogom/walkmgr"
)

// 프로그래스바 테스트
func TestProgressBar(t *testing.T) {
	wm := walkmgr.NewWin("Progressbar 테스트", 640, 480)

	pb := wm.ProgressBar(0, 100, 0)

	wm.Starting(func() {
		go func() {
			for {
				currVal := pb.Value()
				wm.Sync(func() {
					pb.SetValue(currVal + 1)
				})
				time.Sleep(250 * time.Millisecond)

				if currVal == pb.MaxValue() {
					return
				}
			}
		}()
	})

	wm.Start()
}

단순합니다.. WalkUI 의 ProgressBar 메소드를 사용하시면 되구요.. 입력 파라메터는 Min, Max, Current 입니다. 그러니까 Bar 를 구성하는 최소값, 최대값 그리고 현재값 ..

0, 100, 0 으로 생성하면 0~100 까지 값으로 만들어지는 막대에 시작 값은 0이니 진행 상태가 전혀 없는 바가 생성 될것이고

0, 100, 50 으로 생성하면 0~100 까지 값으로 만들어지는 막대에 시작은 50이니 절반쯤 진행된 상태의 바가 생성될 것입니다.

사용 방법 자체는 예를 보시면 충분하시겠고요 ..

레이아웃 배치등은 기존에 하던 방법대로 쓰시면 됩니다.

%d