본문 바로가기

Program

AutoIt으로 GUI 계산기 만들기 – 초보자를 위한 단계별 설명

반응형

 

🔢 AutoIt으로 GUI 계산기 만들기 – 초보자를 위한 단계별 설명

AutoIt은 단순한 자동화 스크립트 언어를 넘어 GUI 프로그램도 제작할 수 있습니다. 이번 포스트에서는 AutoIt의 GUI 기능을 사용해 **간단한 계산기(Simple Calculator)**를 만드는 실습을 진행합니다.

이 프로젝트를 통해 버튼 생성, 입력 필드 처리, 클릭 이벤트 처리 등 GUI 프로그램 제작의 기초를 배울 수 있습니다.


✅ 목표

AutoIt으로 다음과 같은 기능을 가진 계산기 프로그램을 만듭니다:

  • 숫자 2개를 입력
  • 버튼 클릭 시 덧셈 계산
  • 결과를 화면에 표시

📦 최종 코드 예제

#include <GUIConstantsEx.au3>

; GUI 창 생성
GUICreate("AutoIt 계산기", 300, 200)

; 입력 필드 생성
GUICtrlCreateLabel("숫자 1:", 20, 20, 50)
$input1 = GUICtrlCreateInput("", 80, 20, 180)

GUICtrlCreateLabel("숫자 2:", 20, 60, 50)
$input2 = GUICtrlCreateInput("", 80, 60, 180)

; 버튼 생성
$button = GUICtrlCreateButton("더하기", 100, 100, 100, 30)

; 결과 표시 레이블
GUICtrlCreateLabel("결과:", 20, 150, 50)
$output = GUICtrlCreateLabel("", 80, 150, 180)

; GUI 표시
GUISetState(@SW_SHOW)

; 이벤트 루프 시작
While True
    $msg = GUIGetMsg()
    
    If $msg = $GUI_EVENT_CLOSE Then
        Exit
    ElseIf $msg = $button Then
        ; 버튼 클릭 시 실행될 로직
        $val1 = GUICtrlRead($input1)
        $val2 = GUICtrlRead($input2)
        
        ; 유효성 검사
        If IsNumber($val1) And IsNumber($val2) Then
            $sum = Number($val1) + Number($val2)
            GUICtrlSetData($output, $sum)
        Else
            GUICtrlSetData($output, "숫자를 입력하세요.")
        EndIf
    EndIf
WEnd

🧠 코드 설명

1. #include <GUIConstantsEx.au3>

  • AutoIt의 GUI 관련 상수와 이벤트를 사용하기 위해 필요한 라이브러리입니다.

2. GUICreate()

  • 윈도우 창을 생성합니다.
  • "AutoIt 계산기"는 창 제목, 300x200은 창 크기입니다.

3. GUICtrlCreateInput()

  • 사용자로부터 숫자를 입력받을 텍스트 필드입니다.

4. GUICtrlCreateButton()

  • “더하기”라는 버튼을 만들고, 나중에 클릭 이벤트로 연결됩니다.

5. GUIGetMsg() 루프

  • 사용자의 동작(버튼 클릭, 창 닫기 등)을 감지하여 처리하는 루프입니다.

6. GUICtrlRead() / GUICtrlSetData()

  • 입력 필드에서 값을 읽고, 결과를 화면에 표시하기 위해 사용됩니다.

7. IsNumber(), Number()

  • 문자열을 숫자로 변환하고 유효성 검사를 수행합니다.

🖥️ 실행 방법

  1. 위 코드를 simple_calc.au3로 저장합니다.
  2. SciTE 에디터에서 열고 F5 키를 눌러 실행합니다.
  3. 창이 나타나면 숫자 2개를 입력하고, “더하기” 버튼을 눌러 결과를 확인합니다.

💡 확장 아이디어

계산기는 단순한 예제지만, 아래와 같은 기능을 추가해 확장해볼 수 있습니다:

  • 뺄셈, 곱셈, 나눗셈 기능 추가
  • 계산기 히스토리 로그 표시
  • 키보드 입력 처리 (Enter 누르면 자동 실행)
  • GUI 스타일 꾸미기 (아이콘, 폰트, 색상 등)
  • 입력 필드 초기화 버튼 추가

🔍 실무 응용 가능성

  • 간단한 내부용 유틸리티 제작
  • 자동화 매크로 도구의 GUI 인터페이스 구현
  • 입력값 기반 계산 보고서 자동화
  • 사용자 친화적인 입력 도구 개발

AutoIt은 GUI를 제어하는 것이 목적이 아니라, GUI까지 만들어서 완전 자동화된 도구를 제작할 수 있다는 점에서 매우 강력한 자동화 솔루션입니다.


✅ 정리

  • AutoIt은 단순한 키보드/마우스 자동화 외에도 GUI 프로그램 제작이 가능합니다.
  • GUICreate, GUICtrlCreateButton, GUICtrlRead, GUICtrlSetData 등의 함수로 창 구성과 이벤트 처리 가능
  • 계산기처럼 실용적인 예제를 통해 GUI 프로그래밍 기초를 익힐 수 있음
  • 향후 복잡한 입력, 제어도 충분히 구현 가능

 

이제 AutoIt을 사용한 GUI 프로그램의 가능성을 경험하셨다면, 여러분만의 자동화 도구를 만들어보는 건 어떨까요? 복잡한 설정 창, 자동 입력 도구, 백업 유틸리티 등 상상하는 모든 기능을 직접 구현할 수 있습니다. 궁금한 점이나 다음 예제 주제는 댓글로 남겨 주세요 😊

반응형