종류 | 입력형식 | 설명 |
서브루틴 | FrameOpen(“프레임파일이름”) | 지정된 이름의 화면레이아웃을 (프레임) 엽니다. |
함수 | GetExplorerPath(“경로타입”) | 탐색기에서 마지막으로 선택한 파일의 경로를 받아옵니다. |
함수 | IsDirectory(“파일또는폴더명”) | 입력한 파일 또는 폴더가 Xpanel 내부에 있는지 확인합니다. |
함수 | NumToStr(변환할 값, 입력 값의 표기형태, 변환방식) | 지정된 수를 문자로 변환 합니다. |
서브루틴 | PageOpen(“페이지이름”) | 지정된 이름의 화면 열기 |
서브루틴 | PrePage() | 이전에 열린 페이지로 이동합니다. |
서브루틴 | PrePageEx() | 이전에 열린 일반 페이지로 이동합니다. |
서브루틴 | RunApp(“프로그램이름”, “프로그램파라미터”) | 외부 프로그램 실행 |
서브루틴 | ScrCapture(“파일선두문자”, 저장위치) | Xpanel 화면 BMP 파일로 저장 |
서브루틴 | SetSpeed(감속/가속) | Script 모듈의 처리속도를 제어합니다. |
서브루틴 | Sleep(지연시간) | 스크립트 프로그램의 시간을 지연시킵니다. |
서브루틴 | SoftKeyboard(보임/숨김, X축위치, Y축위치) | 소프트 키보드를 열거나 닫습니다. |
함수 | StrToNum(변환할문자열, 진수) | 문자열을 숫자로 변환 |
서브루틴 | TimeStr(획득한값, “포맷”) | 시각표시 문자열 제작 |
FrameOpen | 지정된 이름의 화면레이아웃을 (프레임) 엽니다. |
서브루틴명 | FrameOpen(“프레임파일이름”) |
기능 | 지정된 이름의 화면레이아웃을 (프레임) 엽니다. 확장자 명을 제외한 파일 이름만 입력하여야 합니다. |
사용 예제 | 프레임 파일 “FRAME”을 엽니다. FrameOpen(“FRAME”); |
GetExplorerPath | 탐색기에서 마지막으로 선택한 파일의 경로를 받아옵니다. |
함수명 | GetExplorerPath(경로타입) |
기능 | 탐색기에서 마지막으로 선택한 파일의 경로를 받아옵니다. 경로타입에 다음과 같은 내용으로 경로 타입을 지정합니다 0: 파일 또는 폴더의 상위 경로 1: 선택된 파일 이름 2: 상위 경로와 파일 이름을 포함한 전체 경로 |
사용 예제 | 이전에 탐색기에서 Xpanel 폴더 안에 있는 “Elder.exe”파일을 선택하고 탐색기의 OK버튼을 누른 후 해당 함수를 실행하면 그 상위 경로와 파일 이름을 포함한 전체 경로를 반환합니다. VAR Path; Path = GetExplorerPath(2); |
IsDirectory | 입력한 파일 또는 폴더가 Xpanel 내부에 있는지 확인합니다. |
함수명 | IsDirectory(“파일또는폴더명”) |
기능 | 입력한 파일 또는 폴더가 Xpanel 내부에 있는지 확인합니다. 입력한 문자는 반드시 큰 따옴표 (“ ”)를 이용하여 표현되어야 합니다. 입력한 파일 또는 폴더가 Xpanel 내에 존재하면 1을 반환하며, 존재하지 않으면 0을 반환합니다. |
사용 예제 | Xpanel 내에 USB Storage 라는 폴더가 있는지 확인합니다. VAR FolderCheck; FolderCheck = IsDirectory(“USB Storage”); |
NumToStr | 지정된 수를 문자로 변환 합니다. |
함수명 | STR=NumToStr(변환할 값, 입력 값의 표기형태, 변환방식) |
기능 | 변환할 값을 입력 값의 표기형태로 인식합니다. 이후 변환방식에 입력한 대로 문자로 변환합니다. 입력 값의 표기형태는 다음과 같은 종류가 지원됩니다. _UINT_ : 부호 없는 정수 _INT_ : 부호 있는 정수 _FLOAT_ : 부동 소수점 _HEX_ : 16진수 변환방식은 다음과 같은 형태를 지닙니다. [전체 자리 수] . [소수점 이하 자리 수] 전체 자리 수 : 변환 후 문자의 개수를 지정합니다. 예를 들어 3을 입력한 경우, 변환된 문자는 총 3개의 문자로 구성됩니다. 변환할 수의 자리수가 전체 자리 수보다 큰 경우에는 큰 자릿수 부분이 삭제됩니다. 반대의 경우, 앞부분에 공백이 채워지며, 전체 자리 수 앞에 0이 붙은 경우에는 공백 대신 0이 채워집니다. 소수점 이하 자리 수 : Float형 상수를 변환할 때 지정합니다. 소수점 이하 값 중 문자로 변환할 유효자리 수를 지정합니다. 전체 자리 수보다 작은 값이 지정되어야 합니다. |
사용 예제 | 변수 Val1 에는 123이, Val2에는 0123이, Val3에는 123.45가 저장됩니다. VAR Val1,Va2,Val3; Val1 = NumToStr(123.456, _FLOAT_, “3.0”); Val2 = NumToStr (123.456, _FLOAT_, “04.0”); Val3 = NumToStr (123.456, _FLOAT_, “6.2”); …… |
PageOpen | 지정된 이름의 화면을 엽니다. |
서브루틴명 | PageOpen(“페이지이름”) |
기능 | 지정된 이름의 페이지를 엽니다. 확장자 명을 제외한 파일 이름만 입력하여야 합니다. 다음 내용에 따라 새 페이지가 열리는 형식이 달라지며, 별도의 설정이 없을 경우 이전에 열려있던 페이지는 자동으로 닫힙니다. 팝업페이지: 열고자 하는 페이지가 팝업페이지인 경우 새로 열리는 페이지는 현재 열려있는 페이지에 영향을 미치지 않습니다. 프레임 형태의 페이지: 프레임 내 위치로 지정된 위치에 페이지를 엽니다. 같은 프레임 내 위치로 지정된 페이지는 새로운 페이지로 자동전환됩니다. |
사용 예제 | 페이지 파일 “PAGE”을 엽니다. PageOpen(“PAGE”); |
PrePage | 이전에 열린 페이지로 이동합니다. |
서브루틴명 | PrePage() |
기능 | 이전에 열린 페이지로 이동합니다. 페이지 종류에 관계없이 최근 20개의 페이지까지 이동할 수 있습니다. |
사용 예제 | 이전 페이지로 이동합니다. PrePage(); |
RunApp | 이전에 열린 일반 페이지로 이동합니다. |
서브루틴명 | PrePageEx() |
기능 | 이전에 열린 일반 페이지로 이동합니다. 일반 페이지만 인식하며, 만약 이전 페이지가 팝업페이지 혹은 키패드 페이지일 경우 무시하고 그 이전의 일반 페이지로 이동합니다. |
사용 예제 | 이전 일반 페이지로 이동합니다. PrePageEx(); |
RunApp | 외부 프로그램 실행 |
서브루틴명 | RunApp(“프로그램이름”, “프로그램파라미터”) |
기능 | 외부 프로그램을 실행합니다. 프로그램 이름에는 파일 위치 및 확장자를 포함하여야 합니다. 프로그램 파라미터는 문자열로 인식되므로 반드시 큰따옴표와 함께 쓰여야 합니다. 응용 프로그램은 운영체제에 포함되어있는 프로그램이나 사용자가 작성한 프로그램만 실행할 수 있습니다. |
사용 예제 | DOS Command 창을 열어 입력한 IP에 대한 Ping Test 결과를 확인합니다. RunApp(“Ping.EXE”, “-t 100.100.100.1”); |
ScrCapture | Xpanel 화면 BMP 파일로 저장 |
서브루틴명 | ScrCapture(“파일선두문자”, 저장위치) |
기능 | 현재 Xpanel 화면을 캡처하여 BMP 파일로 저장합니다. BMP파일의 이름은 다음 형식으로 저장됩니다. “파일선두문자_HHMMSS.BMP” 해당 이미지 파일은 저장위치에 입력된 값에 따라 저장됩니다. 저장위치에 0을 입력하면 로컬을 의미하며, 1을 입력하면 SD/MMC를 의미합니다. 2를 입력할 경우 USB에 파일을 저장합니다. 저장위치 는 다음 문자기호로도 표현할 수 있습니다. 0: _LOCAL_ 1: _SDMEM_ 2: _USBMEM_ |
사용 예제 | 현재 XPanel에 보여지는 화면을 BMP 형식의 그림파일로 SD/MMC 카드에 저장합니다. ScrCapture(“Mybmp”, _SDMEM_); |
SetSpeed | Script 모듈의 처리속도를 제어합니다. |
서브루틴명 | SetSpeed(감속/가속) |
기능 | 감속/가속에 0이 아닌 값을 입력하면 이후에 처리할 명령들에 대해 내부적으로 설정된 코드 간 지연시간을 적용하지 않습니다. 즉, 스크립트의 처리 시간을 단축합니다. |
사용 예제 | SetSpeed 함수 호출 이후의 처리가 빨라집니다. TAG0 = TAG0 + 1; SetSpeed(1); TAG1 = TAG1 + 1; TAG2 = TAG2 + 2; |
While 명령을 사용하여 반복 수행되도록 작성된 스크립트에서 R1의 값을 0이 아닌 값으로 설정하여 SetSpeed를 사용하는 경우 해당 스크립트가 종료될 때까지 Xpanel의 모든 동작이 느려질 수 있습니다. SetSpeed가 호출된 이후에 RunScript로 호출되는 함수는 설정에 영향을 받지 않습니다. RunScript를 사용하지 않고 호출된 함수는 정상적으로 설정이 적용됩니다. Ex) SetSpeed(1); RunScript TestScript(); // TestScript에는 SetSpeed가 적용되지 않음 TestScript2(); // TestScript에는 SetSpeed가 적용됨 SetSpeed가 적용된 이후의 코드들은 값에 대한 업데이트가 될 순간을 갖지 못하므로 스크립트 종료 후 한번에 업데이트 처리됩니다. |
Sleep | 스크립트 프로그램의 시간을 지연시킵니다. |
서브루틴명 | Sleep(지연시간) |
기능 | 지연시간에 msec 단위의 시간을 입력합니다. 스크립트 프로그램 중간에 삽입되어 실행중인 스크립트 프로그램의 실행을 지정한 시간만큼 중지시킨 후, 다시 스크립트 프로그램을 진행합니다. 지연시간 값은 반드시 msec단위여야 합니다. |
사용 예제 | 스크립트를 1초(1000msec)동안 중지시킵니다. Sleep(1000); |
SoftKeyboard | 소프트 키보드를 열거나 닫습니다. |
서브루틴명 | SoftKeyboard(보임/숨김, X축위치, Y축위치) |
기능 | 화상키보드를 열 위치를 X축위치, Y축위치에 지정합니다. 보임/숨김에 0이 아닌 값을 입력하여 화상 키보드를 표시합니다. 0을 입력하면 해당 창이 닫힙니다. |
사용 예제 | 화면의 (10,10) 좌표에 화상 키보드를 표시합니다. SoftKeyboard(1,10,10); |
StrToNum | 문자열을 숫자로 변환합니다. |
함수명 | n=StrToNum(변환할문자열, 진수) |
기능 | 변환할문자열에 숫자로 변환 가능한 문자열이 입력되고 진수가 10인 경우 아래 형태로 구성된 문자열을 처리할 수 있습니다. [sign][digit][.digit][{d|D|e|E}[sign]digit] Sign은 (+) 또는 (-)가 지정이 되고, digit은 한 자리 또는 여러 자리로 구성된 10진수가 지정됩니다. 소수점(.) 문자 앞뒤에는 반드시 하나 이상의 10진 숫자가 입력되어 있어야 합니다. 10진수인 경우 앞에서 제시한 (d|D|e|E) 문자와 부호 있는 숫자로 구성된 지수 표기를 처리할 수 있습니다. 지수 문자 또는 소수점이 나오는 경우 반드시 뒤에 10진수가 붙어 있는 것으로 가정하여 처리합니다. 변환할문자열을 숫자로 변환 할 수 없는 경우 0이 넘어 옵니다.
진수에는 0 또는 2 ~ 36을 입력합니다. 진수가 0인경우 아래에 기술된 방식으로 처리됩니다.
처리됩니다. (예: 01234)
진수가 10보다 큰 경우 “a”부터 “z”까지 (또는 “A” 부터 “Z”까지)의 알파벳 문자는 10부터 35사이의 숫자로 처리됩니다. 해당 문자에 할당된 값이 진수보다 작은 경우만 처리가 가능합니다. |
사용 예제 | 변수 VAL에 3.140을 저장합니다. VAR VAL; VAL = StrToNum(“3.14e3”,10); |
TimeStr | 시각표시 문자열 제작 |
함수명 | STR=TimeStr(획득한값, “포맷”) |
기능 | 획득한값에는 변환할 시각, GetTime(0) 함수로 취득한 값 또는 1970년 1월 1일 이후 현재까지의 초단위 카운터 값 (세계 표준시 기준)을 입력합니다. “포맷”에는 제작할 시각 표시 문자열의 포맷을 다음 기호들을 이용하여 구성합니다. %A : 요일 정식 명칭 (Sunday 등) %B : 달의 정식 명칭 (January 등) %b : 달의 약칭 (Jan 등) %d : 날짜 (1~31) %H : 시각 (0~23) %l : 시각 (1~12) %m : 월 (1~12) %M : 분 (0~59) %p : 오전/오후 식별자 (AM/PM) %S : 초 (0~59) %y : 연도 2자리 (세기 생략, 00, 99 등) %Y : 연도 4자리 (세기 포함, 2006, 1999 등) |
사용 예제 | 현재 시각을 변수에 저장하여 년/월/일 시:분:초 형태로 문자열을 생성합니다. CurTime = GetTime(0); StrTag = TimeStr(CurTime, “%Y/%m/%d/ %H:%M:%S”); |