autoit GUI 지식

6904 단어 autoitGUI
GUI 의 개념
GUI 는 하나 이상 의 창 으로 구 성 될 수 있 으 며,이 창 들 은 하나 이상 의 컨트롤 을 가지 고 있다.GUI 는'이벤트 드라이브'로 사용자 와 의 상호작용 을 실현 하 는데,예 를 들 어 버튼 을 누 르 는 것 과 같은 동작 은 하나의 사건 을 일 으 킬 수 있다.프로그램 은 빈 상태 에서 사건 이 발생 하 기 를 기다 리 고 사건 이 포착 되면 사건 에 따라 관련 작업 을 수행 합 니 다.당신 은 자신 이 문 옆에서 우 체 부 를 기다 리 고 있다 고 추측 할 수 있 습 니 다.(편지 가 들 어 올 때 까지 그곳 에 앉 아 있 었 습 니 다)우 체 부가 편 지 를 보 내 면 이 편 지 를 읽 고 다음 에 무엇 을 할 것 인 가 를 결정 해 야 합 니 다.이것 은 GUI 의 원리 와 같 습 니 다.당신 이 기다 리 는 것 은 우 체 부 이 고 GUI 는 사건 을 기다 리 고 있 습 니 다.
물론 GUI(프로그램의 인터페이스)가 실 행 될 때 다른 작업 을 선택 할 수 있 습 니 다.예 를 들 어 GUI 함수 로 자동 으로 업 데 이 트 된 동적 진행 바 를 만 드 는 동시에 다른 복잡 한 작업 도 수행 할 수 있 습 니 다.
 
GUI 컨트롤
모든 사용자 가 컨트롤 에 대해 잘 알 고 있 을 것 입 니 다.창 에서 클릭 하거나 다른 상호작용 을 할 수 있 는 부분 은 컨트롤 의 일종 입 니 다.AutoIt 에서 만 들 수 있 는 컨트롤 형식 은 다음 과 같 습 니 다.(다른 Windows 프로그램 에서 보 았 을 것 입 니 다.)
  • Label
  • 일반 텍스트 컨트롤
  • Button
  • 버튼
  • Input
  • 텍스트 를 입력 할 수 있 는 단일 편집 상자
  • Edit
  • 다 중 줄 편집 상자,텍스트 입력 가능
  • Checkbox
  • 체크 상자 단추,선택 되 거나 취 소 될 수 있 습 니 다.
  • Radio
  • 원형 단추(보통 몇 개의 그룹 으로 한 번 에 한 개 만 활성화/선택 할 수 있 습 니 다)
  • Combo
  • 콤 보 상자,드 롭 다운 목록 이 있 습 니 다.
  • List
  • 목록 상자
  • Date
  • 날짜 선택
  • Pic
  • 그림.
  • Icon
  • 아이콘
  • Progress
  • 진도 표
  • Tab
  • 태그,모든 태그 에는 컨트롤 이 포함 되 어 있 습 니 다.
  • UpDown
  • 입력 형 컨트롤 에 추가 가능
  • Avi
  • AVI 형식의 편집 보이 기
  • Menu
  • 창 맨 위 에 있 는 메뉴
  • ContextMenu
  • 창 에서 오른쪽 단 추 를 눌 렀 을 때 나타 나 는 메뉴
  • TreeView
  • 윈도 우즈 와 유사 한 자원 관리자(트 리 보기)
  • Slider
  • Windows 와 유사 한 볼 륨 컨트롤(슬라이더)
  • ListView
  • 열 에 따라 정 보 를 표시 하 는 컨트롤(목록 보기)
  • ListViewItem
  • ListView 컨트롤 항목
  • Dummy
  • 가상 사용자 컨트롤
     
    다음은 AutoIt 에서 지원 하 는 많은 컨트롤 을 포함 하 는 단일 창의 GUI 예제 입 니 다.이 를 통 해 알 수 있 듯 이 AutoIt 은 정말 풍부 한 GUI 를 만 들 수 있 습 니 다!

     
    GUICtrlCreate...등 함 수 를 사용 하면 컨트롤 을 만 들 수 있 습 니 다.생 성 시 함수 가 컨트롤 ID 를 되 돌려 줍 니 다.컨트롤 ID 에 대해 몇 가지 주의사항 이 있 습 니 다.
  • 컨트롤 ID 는 정수 입 니 다.(즉,이 수가 0 보다 많다 는 뜻)
  • 모든 컨트롤 ID 는 유일 성 을 가진다(여러 창 이 존재 하 더 라 도).
  • 컨트롤 ID 는AutoIt Window Info를 통 해 얻 을 수 있 습 니 다.
     
    GUI 기본 함수
    다음은 GUI 를 만 들 수 있 는 함수 입 니 다.그러나 이것 은 모두 비교적 초급 응용 프로그램 입 니 다.더 높 은 GUI 를 만 들 준비 가 되 어 있다 면 다른 고급 함수 도 있 습 니 다.
    함수.
    해명 하 다.
    GUICreate
    창 을 만 듭 니 다.
    GUICtrlCreate...
    각종 컨트롤 을 만 듭 니 다.
    GUISetState
    창 을 표시 하거나 숨 깁 니 다.
    GUIGetMsg
    GUI 에 이벤트 발생 여 부 를 알 립 니 다(메시지 순환 에 만 사용).
    GUICtrlRead
    컨트롤 데이터 읽 기.
    GUICtrlSetData
    컨트롤 의 데 이 터 를 설정/변경 합 니 다.
    GUICtrlSet...
    컨트롤 에 대해 각종 속성 설정(색상,스타일 등)을 진행 합 니 다.
     
    GUI 스 크 립 트 를 만 들 기 전에 GUI 스 크 립 트 시작 위치 에 파일 GUIConstants.au 3 을 포함 하 는 것 을 잊 지 마 십시오.(이 파일 은 GUI 프로그램 을 만 들 때 사용 할 모든 변수 와 상수 가 포함 되 어 있 습 니 다.)
    먼저 창 을 만 듭 시다.'안녕하세요'라 고 이름 을 붙 이 고 길 이 를 각각 200 개 와 100 개의 픽 셀 로 설정 합 니 다.창 이 만 들 어 졌 을 때 숨겨 져 있 기 때문에'show(표시)'에 먼저 보 여 줘 야 합 니 다.
    \#includeGUICreate("안녕하세요",200,100)GUISetState(@SWSHOW)Sleep(2000)
     
    위의 스 크 립 트 를 실행 하면 창 이 나타 나 2 초 후에 사라 지 는 것 을 볼 수 있 습 니 다.아직 재 미 없 나 봐 요...그럼 창 에 문자 와 확인 단 추 를 추가 해 보 세 요!우 리 는 문 자 를 30,10 이 위치 에 추가 하고 단 추 를 70,50 이 위치 에 놓 으 며 단추 의 너 비 를 60 개의 픽 셀 로 설정 합 니 다.
    \#includeGUICreate("안녕하세요",200,100)GUICtrlCreate Label("요즘 어떻게 지내 십 니까?"30,10)GUICtrlCreateButton("돌려 줘",70,50,60)GUISetState(@SWSHOW)Sleep(2000)
     
    좋아,이제 보 니 괜찮아.그런데 어떻게 하면 이 GUI 가 저희 가 버튼 을 누 른 이벤트 에 응답 할 수 있 을까요?이 때 우 리 는 이 벤트 를 어떻게 처리 할 지 먼저 결정 해 야 합 니 다.메시지 순환(Message Loop)을 통 하거나 OnEvent 함 수 를 통 해.
     
    GUI 이벤트 모드
    위 에서 언급 한 바 와 같이 우 리 는 메시지 순환(Message Loop)모드 와 OnEvent 모드 두 가지 기본 적 인 GUI 모드 가 있 습 니 다.이 두 모델 은 GUI 이벤트 에 응답 하 는 서로 다른 구현 방식 이다.어떤 모드 를 선택 할 지 는 개인 취향 이나 만 들 고 싶 은 GUI 형식 에 따라 다 릅 니 다.이 두 가지 모드 는 원 하 는 GUI 를 만 드 는 데 사용 할 수 있 습 니 다.다만 어느 때 는 그 중 하 나 를 사용 하 는 것 이 다른 것 보다 좋 습 니 다.
    메시지 순환 은 기본 모드 입 니 다.OnEvent 모드 로 전환 하려 면Opt("GUIOnEventMode", 1)문 구 를 사용 하 십시오.
     
     
    메시지 순환 모드(기본 값)
    메시지 순환 모드 에서 스 크 립 트 는 대부분 주기 가 매우 짧 은 순환 을 수행 합 니 다.이 순환 알림 GUI 는GUIGetMsg함 수 를 사용 합 니 다.어떤 사건 이 발생 했 을 때 GUI GetMsg 함 수 는 메 시 지 를 반환 수치 로 되 돌려 줍 니 다(예 를 들 어 어떤 버튼 이 눌 리 거나 GUI 가 닫 히 는 등).
    이 모드 에 서 는 GUI GetMsg 함 수 를 자주 사용 할 때 만 이 벤트 를 받 을 수 있 습 니 다.따라서 이 함 수 를 1 초 에 몇 번 씩 호출 하 는 지 확인 해 야 합 니 다.그렇지 않 으 면 GUI 가 이벤트 에 응답 할 수 없습니다.
    이 모드 는 GUI 를 중점 으로 하 는 스 크 립 트 에 가장 적합 하 며 사용자 이 벤트 를 기다 리 는 것 에 가장 관심 이 있 습 니 다.
    메시지 순환 모드에 대한 더 자세 한 설명 이 필요 하 시 면이 페이지에서 확인 하 십시오.
     
    이벤트 모드
    OnEvent 모드 에서 스 크 립 트 는 GUI 에 게 어떤 사건 이 발생 했 는 지 확인 하 라 고 자주 요구 하지 않 고 어떤 사건 이 발생 했 을 때 만 GUI 가 스 크 립 트 를 일시 정지 하고 사용자 가 미리 정의 한 함 수 를 호출 합 니 다.예 를 들 어 사용자 가 버튼 1 을 눌 렀 다 고 가정 하면 GUI 는 메 인 스 크 립 트 를 중단 하고 미리 정 의 된 사용자 함수 로 버튼 1 이 벤트 를 처리 합 니 다.이 함수 가 처리 작업 을 마 친 후에 야 메 인 스 크 립 트 로 돌아 가 계속 실행 합 니 다.이 모드 는 Visual Basic 과 유사 한 창 방법 입 니 다.
    이 모드 는 GUI 가 두 번 째 로 중요 한 위치 에 있 는 스 크 립 트 에 가장 적합 하 며,스 크 립 트 는 다른 작업 을 우선적으로 수행 해 야 합 니 다.
    이벤트 모드에 대한 더 자세 한 설명 이 필요 하 시 면이 페이지에서 확인 하 십시오.
  • 좋은 웹페이지 즐겨찾기