NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • NGM 6
  • 매뉴얼

    NGM 6

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    디자이너 내 제품에 엔지엠 자동화 스크립트 로직을 추가하는 방법.

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. [ 이전 예제 ]는 아주 간단하게 내 제품에서 마우스 클릭하는 방법에 대해 알아봤습니다. 오늘은 코딩 방식이 아닌 이미 만들어진 자동화 스크립트를 사용하는 방법에 대해 알아보도록 하겠습니다. 코드는 없지만, 윈폼에 버튼을 하나 추가하고 스크립트가 실행되도록 만드는 방법입니다. 이미 디자이너에 대해 기본적인 내용을 학습했다면 이 예제도 쉽게 이해할 수 있습니다. 아래와 같이 윈폼에 라벨과 버튼을 하나 추가해줍니다.

    mECs1rs.png

     

     

    시작 버튼을 더블 클릭하면 이벤트 핸들러가 추가되고 소스 보기로 이동됩니다. 첨부되어 있는 "직각 삼각형 그리기.ngs" 스크립트를 내문서 > NGM6 > Script 폴더에 복사 해주세요. 아래 소스를 붙여넣기 하세요.

    using System;
    using System.IO;
    using System.Windows.Forms;
    
    namespace FrameworkTest
    {
        public partial class Form1 : Form
        {
            private Designer.Component.ScriptView sv = null;
    
            public Form1()
            {
                InitializeComponent();
                
                // isBackground 파라메터를 false로 명시하지 않으면 뷰를 생성하지 않고 백그라운드로 실행됩니다.
                sv = new Designer.Component.ScriptView(
                    new Designer.ComponentDefault.MainView(), 
                    Path.Combine(GetDefaultScriptPath(),
                    "직각 삼각형 그리기.ngs"));
            }
    
            private string GetDefaultScriptPath()
            {
                // 기본 폴더 위치를 만듭니다.
                return Path.Combine(
                    Environment.GetFolderPath(
                        Environment.SpecialFolder.MyDocuments), "NGM6", "Script");
            }
    
            private void button1_Click(object sender, System.EventArgs e)
            {
                try
                {
                    // 스크립트를 실행합니다.
                    sv.Play();
                }
                catch (Exception ex)
                {
                    // 실행중에 에러가 발생하면 사용자에게 메시지를 표시합니다.
                    MessageBox.Show(ex.Message);
                }
            }
        }
    }

     

    F5를 눌러서 실행하고, 시작 버튼을 클릭 해보세요.

    kkxzyPG.gif

     

     

    심심한데~ 성능 테스트도 같이 해볼까요? [ 성능 테스트 ]에 포함되어 있는 스크립트를 다운로드 후 위와 동일한 위치에 복사 해둡니다. 그리고, 코드를 아래와 같이 수정해줍니다.

    public Form1()
    {
        InitializeComponent();
                
        // isBackground 파라메터를 false로 명시하지 않으면 뷰를 생성하지 않고 백그라운드로 실행됩니다.
        sv = new Designer.Component.ScriptView(
            new Designer.ComponentDefault.MainView(), 
            Path.Combine(GetDefaultScriptPath(),
            "웹테스트.ngs"));
    }

     

    실행하고, 속도를 체크 해보세요.

    img.gif

     

     

    에디터보다 빠르게 동작하지만, 플레이어와는 별다른 차이점이 없습니다. 자신의 서비스에 엔지엠 기능을 추가하려면 로직 사이에 이 예제 코드를 추가하면 됩니다. 한가지 조심해야 할 부분은 엔지엠의 하이어라키(Hierarchy, 계층) 구조를 이해하고 사용해야 한다는 것입니다. 엔지엠은 매인뷰(MainView) 안에 여러 스크립트가 포함될 수 있습니다. 스크립트 안에는 여러개의 액션이 포함될 수 있죠. 최상위인 자신의 서비스 안에는 매인뷰(MainView)를 여러가 추가할 수 있습니다. 약간 설명이 복잡한데요. 이 부분은 다음에 자세하게 알아보도록 하겠습니다.

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    첨부파일

    댓글목록

    등록된 댓글이 없습니다.