예제로 익히는 비베 기초(1)-시계

안녕하세요. 손병목입니다.

오늘은 아주 간단한 프로그램 하나 만들어보죠. 아래 화면과 같이 현재 날짜와 시간을 보여주는 프로그램인데, 이를 통해 컨트롤 추가, 속성값 변경에서 이벤트 발생 시 처리 프로그래밍, 단축 키 기능까지 가능하도록 해보죠. 그런 다음 실제로 실행 파일을 만들어보죠.

이렇게 말하니까 무지 복잡하겠구나하고 혹시 생각하셨다면 무지무지 실망하실 겁니다. 실제로 프로그램 코드는 단 두 줄만 필요하니까요.


  1. 비주얼베이직을 실행합니다.
  2. 레이블 컨트롤, 커맨드 버튼 컨트롤, 타이머 컨트롤을 아래 그림과 같이 배치합니다.

  3. 레이블 컨트롤의 속성 값을 다음과 같이 변경하세요. 어떻게 하시는지 아시죠?
      • (이름) : frmTimer
      • Caption : 현재시간
    • 레이블 컨트롤
      • (이름) : lblResult
      • BorderSyle : 1-단일고정
      • Caption : 현재시간입니다.
      • Font : 굴림, 12포인트
    • 커맨드 버튼 컨트롤
      • (이름) : cmdExit
      • Caption : 끝내기(&x)
        Alt+x 를 눌러도 동일한 기능을 수행한다는 뜻입니다.
    • 타이머 컨트롤
      • (이름) : tmrTimer
      • Interval : 1000
        Interval값이 1000이면 1초마다 타이머를 실행하라, 즉 1초마다 타이머 이벤트를 발생시키라는 뜻입니다. Interval은 1초를 1000으로 나눈 값을 기준으로 합니다.
  4. 폼 위의 커맨트 버튼을 더블클릭하여 코드 창을 엽니다.
    여기서 잠깐! 혹시 기억하나요? 이와 같이 특정 컨트롤을 더블클릭하면 가장 많이 실행하는 이벤트 함수가 나타난다는 것. 앞 강좌에서 말씀 드렸습니다. 그래서 커맨드 버튼을 클릭하면 클릭 이벤트 함수가 자동으로 나옵니다. 이와는 다르게 그냥 코드 창을 보고 싶을 경우에는 [보기]메뉴에서 코드를 출력하거나 마우스 오른쪽 버튼을 누른 다음 [코드 보기]를 선택하면 됩니다. 다 아는 것을 괜히 말했나? 쩝.
    아래와 같이 cmdExit_Click() 함수에 End를 추가합니다.

  5. 폼 위의 타이머 컨트롤을 더블클릭하여 다시 코드 창을 엽니다.
    아래 그림과 같이,
    lblResult.Caption = Format(Now, “yyyy년 mm월 dd일. AM/PM hh시 mm분 ss초”)를 추가합니다.

    • 대충은 이해가 가죠? lblResult.Caption에 어떤 값을 집어넣으라는 뜻이죠.
    • Format 함수는 서식을 설정할 때 사용합니다. 즉 날짜나 시간을 표시할 때 연도는 몇 자리로 표시하고 시 분 초를 어떻게 표시하느냐 하는 것을 지정합니다.
      위의 코드를 살펴보면 현재의 시간(Now)을 표시하되, 연도는 4자리(yyyy), 월은 2자리(mm), 일은 2자리(dd)로 표시하고, 시간을 표시하되 오전 오후를 구분하여 12시간제로 표시(AM/PM)하고 시(hh), 분(mm), 초(ss)까지 표시한다는 뜻입니다.

    • 타이머의 Interval 속성값을 1000으로 변경했던 거 기억하시죠? 즉 1초마다 타이머 이벤트가 발생되도록 한 거 말입니다. 따라서 타이머 이벤트가 1초마다 발생하면서 lblResult의 캡션 값이 1초마다 바뀝니다.
  6. 파일을 저장합니다.
    • 폼 파일 이름 : frmTimer
    • 프로젝트 파일 이름 : 타이머
  7. 아래 그림과 같이 [파일] 메뉴에 “타이머.exe 만들기”를 클릭합니다.

    • 만약 위와 같은 메뉴가 보이지 않는다면 위에서 프로젝트 파일을 ‘타이머’라는 이름으로 저장하지 않았기 때문입니다.
    • 프로젝트 파일이 저장된 폴더에 ‘타이머.exe’ 파일이 생성됩니다.
  8. 탐색기로 를 더블클릭하여 실행해 보세요.

혹시 잘 안되나요? 제가 만든 소스 파일을 압축해서 올립니다. 다운로드해서 확인해 보세요.

이상 동주아빠 손병목이었습니다.

위로 스크롤