반응형
🔢 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()
- 문자열을 숫자로 변환하고 유효성 검사를 수행합니다.
🖥️ 실행 방법
- 위 코드를 simple_calc.au3로 저장합니다.
- SciTE 에디터에서 열고 F5 키를 눌러 실행합니다.
- 창이 나타나면 숫자 2개를 입력하고, “더하기” 버튼을 눌러 결과를 확인합니다.
💡 확장 아이디어
계산기는 단순한 예제지만, 아래와 같은 기능을 추가해 확장해볼 수 있습니다:
- 뺄셈, 곱셈, 나눗셈 기능 추가
- 계산기 히스토리 로그 표시
- 키보드 입력 처리 (Enter 누르면 자동 실행)
- GUI 스타일 꾸미기 (아이콘, 폰트, 색상 등)
- 입력 필드 초기화 버튼 추가
🔍 실무 응용 가능성
- 간단한 내부용 유틸리티 제작
- 자동화 매크로 도구의 GUI 인터페이스 구현
- 입력값 기반 계산 보고서 자동화
- 사용자 친화적인 입력 도구 개발
AutoIt은 GUI를 제어하는 것이 목적이 아니라, GUI까지 만들어서 완전 자동화된 도구를 제작할 수 있다는 점에서 매우 강력한 자동화 솔루션입니다.
✅ 정리
- AutoIt은 단순한 키보드/마우스 자동화 외에도 GUI 프로그램 제작이 가능합니다.
- GUICreate, GUICtrlCreateButton, GUICtrlRead, GUICtrlSetData 등의 함수로 창 구성과 이벤트 처리 가능
- 계산기처럼 실용적인 예제를 통해 GUI 프로그래밍 기초를 익힐 수 있음
- 향후 복잡한 입력, 제어도 충분히 구현 가능
이제 AutoIt을 사용한 GUI 프로그램의 가능성을 경험하셨다면, 여러분만의 자동화 도구를 만들어보는 건 어떨까요? 복잡한 설정 창, 자동 입력 도구, 백업 유틸리티 등 상상하는 모든 기능을 직접 구현할 수 있습니다. 궁금한 점이나 다음 예제 주제는 댓글로 남겨 주세요 😊
반응형
'Program' 카테고리의 다른 글
NSIS로 '프로그램 추가/제거' 기능 완전 구현하기 – 설치 + 제거 + 레지스트리 등록까지 (0) | 2025.06.11 |
---|---|
NSIS로 만든 프로그램, 제어판 '프로그램 추가/제거'에 등록하기 (0) | 2025.06.11 |
AutoIt으로 메모장 자동화하기 – 키보드 입력까지 완전 정복 (2) | 2025.06.11 |
AutoIt으로 Hello World! – 자동화 스크립트의 첫걸음 (2) | 2025.06.11 |
docker run 인자 완전 정복 – 컨테이너 실행의 모든 것 (1) | 2025.06.11 |