사용 환경에 따른 기능 제약
MaskEdit 컴포넌트에 포커스가 옮겨졌을 때 캐럿 위치가 달라지는 현상
iOS 운영체제를 사용하는 디바이스에서 MaskEdit 컴포넌트의 type 속성값이 "string"인 경우 포커스가 옮겨졌을 때 캐럿 위치가 마지막으로 이동하는 현상이 있습니다.
RP | 작성일 | 설명 |
---|---|---|
69265 | 2016-09-13 | iOS 운영체제를 사용하는 디바이스에서 컴포넌트의 편집 영역에 포커스가 옮겨지는 경우 키패드가 표시되는 명령을 호출합니다. 이때 내부적으로 INPUT DOM 트리의 type을 변경하고 text 값을 다시 설정합니다. 이 과정에서 캐럿이 마지막으로 이동하는 현상이 발생합니다. 강제적으로 캐럿의 위치를 변경할 수 있지만, 성능에 영향을 미칠 수 있어 현재의 상태를 유지하고 있습니다. |
"향상된 보호 모드" 옵션 활성화 시 파일 내려받기 기능 제약
IE10 이상 브라우저에서 [향상된 보호 모드] 옵션을 활성화한 경우 윈도우 폴더를 보호하기 위해 특정 폴더만 접근할 수 있도록 경로가 가상화되어 처리됩니다. 사용자가 해당 옵션을 활성화한 경우에 파일 내려받기 경로를 지정하는 기능을 사용할 수 없습니다.
RP | 작성일 | 설명 |
---|---|---|
71778 | 2017-02-13 | IE10 이상 브라우저 사용 시 사용자가 선택하는 옵션입니다. 필요한 경우 사용자가 옵션을 변경하도록 안내할 수 있습니다. |
FileUpload 컴포넌트의 appendItem 메소드가 동작하지 않는 현상
Safari 브라우저에서 FileUpload 컴포넌트의 appendItem 메소드를 반복해서 실행하는 경우 두 번째 실행부터 동작하지 않습니다.
RP | 작성일 | 설명 |
---|---|---|
72002 | 2017-02-28 | 윈도우용 Safari 브라우저 버그입니다. |
Edit 영역을 가지는 컴포넌트의 텍스트 검색 제약
IE 브라우저를 사용하는 경우에는 Edit 영역을 가지는 컴포넌트에 입력된 텍스트를 브라우저의 찾기 기능을 사용해 검색할 수 없습니다.
RP | 작성일 | 설명 |
---|---|---|
72123 | 2017-03-09 | IE 브라우저 기능 제약입니다. |
WebBrowser 컴포넌트 생성, 삭제 반복 시 운영체제 메모리 증가
윈도우 운영체제에서 NRE 실행 시 WebBrowser 컴포넌트를 생성했다가 삭제하는 작업이 빈번하게 발생하는 경우 운영체제의 메모리 사용이 증가하며 동작이 느려지는 현상이 발생합니다.
예를 들어 Div 컴포넌트의 url 속성값으로 지정한 Form 오브젝트 내에 WebBrowser 컴포넌트를 배치한 경우 Div 컴포넌트의 url 속성값을 변경할 때마다 내부적으로 WebBrowser 컴포넌트의 생성과 삭제가 반복되며 메모리 사용이 증가합니다.
RP | 작성일 | 설명 |
---|---|---|
74036 | 2017-07-05 | NRE에서 실행 시 WebBrowser 컴포넌트는 WebBrowser2 OLE 컨트롤을 임베디드한 기능을 사용합니다. WebBrowser2 OLE 컨트롤의 특성상 생성, 삭제가 반복될 경우 메모리가 증가한다는 것이 제조사(마이크로소프트)의 공식적인 답변입니다. 하나의 WebBrowser 컴포넌트를 생성한 후 재사용하는 것을 권장합니다. |
마우스를 빠르게 움직이면 Div 컴포넌트의 onmouseout 이벤트가 발생하지 않는 현상
Div 컴포넌트 내에 UI 컴포넌트를 배치하고 Div 컴포넌트의 onmouseout 이벤트를 지정한 경우 마우스를 움직여 Div 컴포넌트 위를 지나가면 onmouseout 이벤트가 발생해야 하지만, 마우스를 빠르게 이동하는 경우 이벤트가 정상적으로 발생하지 않습니다.
예를 들어 아래 그림의 경우 파란색으로 칠해진 곳이 Div 컴포넌트이고 빨간색이 Button 컴포넌트인데 Div 컴포넌트 아래쪽에서 Button 컴포넌트를 지나 Div 컴포넌트의 위쪽으로 마우스를 빠르게 움직이면 onmouseout 이벤트가 정상적으로 발생하지 않는 경우가 있습니다.
생성되는 HTML 코드는 아래와 같습니다. 실제 Button 컴포넌트를 배치하고 Generate된 코드는 좀 더 복잡한데 브라우저에서 이벤트가 발생하지 않는 현상은 Div 태그가 중첩된 경우 재현되고 있습니다.
<div id="mainframe.QuickViewFrame.form.Div00" style="left: 141px; top: 504px; width: 400px; height: 115px; background:#0000ff; "> <div style="left: 20px; top: 20px; width: 300px; height: 73px; background:red; ">Button00 </div> </div>
RP | 작성일 | 설명 |
---|---|---|
76382 | 2017-10-16 | 브라우저에서 마우스 포인터를 빠르게 움직이는 경우 간혹 발생하는 현상입니다. |
접근성 설정 시 키패드 사용 제약
iOS 운영체제에서 접근성 설정이 활성화된 앱 실행 시 텍스트 편집 영역을 가지고 있는 컴포넌트의 inputtype 속성값이 "number"인 경우에 숫자 키패드가 아닌 일반 키패드가 올라오도록 설정되어 있습니다. iOS 운영체제에서 접근성 설정이 활성화된 경우 숫자 키패드를 올라오도록 하면 화면 스크롤 위치가 맨 위로 올라가는 문제가 있어서 일반 키패드가 올라오도록 처리하고 있습니다.
RP | 작성일 | 설명 |
---|---|---|
78855 | 2018-03-19 | iOS 운영체제에서 접근성 설정이 활성화된 경우 숫자 키패드 처리 시 문제로 인해 일반 키패드가 올라오도록 하고 있습니다. |
ActiveX 필터링 기능 활성화 시 스크립트 에러
IE10 이상 웹브라우저 사용 시 ActiveX 필터링 기능을 활성화하는 경우 ActiveXObject 기능을 사용할 수 없으며 정상적으로 동작하지 않고 스크립트 에러가 발생할 수 있습니다.
https://support.microsoft.com/ko-kr/help/17469/windows-internet-explorer-use-activex-controls
RP | 작성일 | 설명 |
---|---|---|
73214 | 2017-04-28 | IE10 이상 웹브라우저 사용 시 ActiveX 필터링 기능을 활성화한 경우 발생하는 현상입니다. ActiveX 필터링 기능을 비활성화한 상태에서 사용하도록 안내해야 합니다. |
iOS 운영체제에서 Update Type에 따른 쿠키 사용 제약
iOS 운영체제 앱 배포 시 Update Type을 "Update" 또는 "Local"으로 설정한 경우 디바이스 로컬 경로에 설치된 컨텐츠(Run.html)의 쿠키 사용에 제약이 있을 수 있습니다. 쿠키를 사용해야 한다면 Update Type을 "Server"로 설정하고 컨텐츠가 관리되는 서버와 transaction 메소드 실행 시 요청 서버의 도메인을 같게 설정해 주어야 합니다.
컨텐츠(Run.html) 파일이 로컬 경로(file://)에서 동작하는 경우에는 어떠한 쿠키도 허용되지 않으며 쿠키를 설정할 수 없습니다. 스크립트로 접근(document.cookie)하거나 WKWebView API(WKHTTPCookieStore)를 이용해 쿠키를 설정하는 것도 허용하지 않습니다.
Update Type을 "Update" 또는 "Local"로 지정한 경우에는 WebBrowser 컴포넌트에서 callMethod 메소드를 사용해 HTML 파일에 접근하는 기능을 사용할 수 없습니다.
RP | 작성일 | 설명 |
---|---|---|
- | 2018-07-30 | iOS NRE에서 사용하는 WKWebView에 따라 cookie 접근이 제한되어 발생하는 현상입니다. |
넥사크로 윈도우 앱 설치 시 프로그램 시작 오류 발생
배포된 넥사크로 윈도우 앱 설치파일(nexacroN_SetupRuntime_xXX.exe)을 실행하는 경우 api-ms-win-crt-runtime-l1-1-0.dll 관련 오류가 발생하면서 설치가 되지 않습니다. 윈도우 최신 업데이트가 설치되지 않은 경우 발생하는 현상이며 윈도우 업데이트 설치 시 해당 오류가 발생하지 않습니다.
예를 들어 윈도우7 SP1까지 업데이트 후 추가적인 업데이트를 하지 않은 경우 발생할 수 있습니다. 윈도우 업데이트를 실행하거나 해당 오류를 해결하는 패키지를 내려받아 설치할 수 있습니다. 자세한 내용은 아래 링크를 참고하세요.
Windows에서 범용 C 런타임에 대한 업데이트
https://support.microsoft.com/ko-kr/help/2999226/update-for-universal-c-runtime-in-windows
RP | 작성일 | 설명 |
---|---|---|
81751 | 2018-09-05 | 최신 윈도우 업데이트가 설치되지 않은 경우 발생하는 오류입니다. |
iPad 단말기에서 Screen 오브젝트 type 속성값 처리 제약
앱 실행 시 단말기와 운영체제 특성에 따라 Screen 목록에서 type, specifiedos, specifiedlocale 속성을 확인합니다. 하지만 iPad 단말기의 경우에는 디바이스의 크기를 판단할 수 있는 정보가 부족해 type 속성을 물리적인 화면 크기가 아니라 "mobile_large"로 적용합니다.
대상 iPad 단말기는 아래와 같습니다. 제조자 일정에 따라 대상 단말기는 추가될 수 있습니다.
Apple iPad 1,2 Apple iPad Air 1,2 Apple iPad Pro Apple iPad mini 1,2,3,4
RP | 작성일 | 설명 |
---|---|---|
82223 | 2018-10-11 | 디바이스에서 관련 정보를 제공하지 않아 스크린 타입 속성을 강제로 지정한 제약입니다. |
Calendar 컴포넌트의 날짜가 디바이스에 따라 다르게 표시되는 현상
Calendar 컴포넌트에 표시되는 일, 월의 길이가 1자리인 경우(1~9) 사용 환경에 따라 날짜가 다르게 표시됩니다. 해당 제약은 웹브라우저 자체에서 제어하는 부분이라 제품에서 지원할 수 없습니다.
예를 들어 popuptype 속성값은 "system", value 속성값은 "20190501"으로 설정한 경우 iOS 운영체제에서는 "2019. 5. 1."로 표시되며 안드로이드 운영체제에서는 "2019. 05. 01"로 표시됩니다(운영체제 언어 설정이 한국어인 경우).
모바일 디바이스 실행 환경에서는 popuptype 속성값을 "system"으로 설정한 경우에는 dateformat 속성값을 "yyyy-MM-dd"으로 자동 적용합니다. popuptype 속성값을 지정하지 않은 경우에는 "system"으로 동작합니다.
dateformat 속성값이 "yyyy-MM-dd"로 설정되더라도 시스템 환경에 따라 다른 형식으로 표현될 수 있습니다. 운영체제 언어 설정이 한국어로 되어 있는 경우 안드로이드 운영체제에서는 "yyyy.MM.dd", iOS 운영체제에서는 "yyyy.M.d" 형식으로 표시합니다.
RP | 작성일 | 설명 |
---|---|---|
83053 | 2019-03-08 | 운영체제와 웹브라우저에 따라 처리 방식이 달라 발생하는 제약입니다. |
WebBrowser 컴포넌트의 url 속성으로 Local-Url 접근 시 제약
iOS 운영체제의 WKWebView는 Local-Url(File://) 형식으로 파일에 접근을 제한하고 있습니다. 이런 제약으로 HTML 파일을 배포하고 WebBrowser 컴포넌트에서 접근하는 기능을 사용할 수 없습니다.
해당 기능을 사용하려면 Packing 단계에서 Update Type을 "Server"로 지정해서 서버에 있는 HTML 파일에 접근하는 형식을 선택해야 합니다. Update Type을 "Update" 또는 "Local"로 지정한 경우에는 WebBrowser 컴포넌트에서 callMethod 메소드를 사용해 HTML 파일에 접근하는 기능을 사용할 수 없습니다.
Update Type을 "Update" 또는 "Local"로 지정한 경우에는 디바이스 로컬 경로에 설치된 컨텐츠(Run.html)의 쿠키 사용에 제약이 있을 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
80584 | 2019-03-26 | iOS NRE에서 사용하는 WKWebView 제약 사항으로 로컬 파일에 접근할 수 없습니다. |
일부 한글 쿼티 자판에서 한글 입력 시 영문으로 변환되어 입력되는 현상
안드로이드 운영체제에 설치한 앱에서 MaskEdit 컴포넌트의 format 속성값에 "@"을 설정해 한글 입력을 막은 상태에서 한글 입력을 시도하면 해당 자판 위치의 영문으로 자체 변환되어 입력되는 현상이 발생할 수 있습니다.
한글 쿼티 자판 형식의 일부 키패드에서 발생하는 현상입니다. 키패드는 사용자가 임의로 설치하고 선택할 수 있는 사항이라 모든 현상에 대응할 수 없으며 제약으로 처리합니다.
RP | 작성일 | 설명 |
---|---|---|
85926 | 2019-06-28 | 안드로이드 운영체제에서 사용하는 일부 키패드에서 발생하는 현상입니다. |
Grid 컴포넌트 크기 변경 시 잔상이 보이는 현상
화면 내 복잡한 구조로 컴포넌트가 배치되어 있고 Grid 컴포넌트를 사용하는 경우 화면 크기 변경 시 잔상이 보이는 현상이 나타날 수 있습니다. 사용하는 PC의 하드웨어 성능이 느린 환경에서 IE 브라우저를 사용하는 경우에 발생하는 현상입니다.
HTML 내 node 수가 많고 표 형식을 표현하기 위해 CSS 코드 내에서 테이블 모델을 사용하는 경우 화면 크기 변경 시 내부적으로 연산 처리가 발생합니다. 이 과정에서 하드웨어 성능에 따라 잔상이 발생할 수 있습니다.
CSS table model
RP | 작성일 | 설명 |
---|---|---|
85839 | 2019-06-27 | 윈도우 7 운영체제에서 IE10 브라우저를 사용하는 경우 발견됐습니다. 하드웨어 성능에 따라 연산 처리 과정에서 발생하는 현상이기 때문에 다른 조건에서도 발생할 수 있습니다. |
텍스트 오른쪽 정렬과 이탤릭체 적용 시 글자 잘림 현상
텍스트를 표시하는 컴포넌트에서 -nexa-text-align 속성값을 "right"로 지정하고 font 속성에서 font-style 속성값을 "italic"으로 지정하는 경우에는 font-family 속성값이나 font-size 속성값에 따라 오른쪽에 표시되는 글자 일부가 잘려서 표시될 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
88094 | 2020-02-03 | 이탤릭체 적용 시 컴포넌트 영역을 글자가 벗어나면서 발생하는 현상입니다. NRE, WRE 모두 발생하는 현상입니다. |
system calendar에서 변경한 날짜 확정 시점의 차이
모바일 디바이스에서 Calendar 컴포넌트의 popuptype 속성값을 "system"으로 지정한 경우 날짜 변경 시 변경한 날짜 확정 시점의 차이가 있습니다. 각 운영체제의 특성에 따른 것이며 해당 제약을 확인 후 값을 처리해주어야 합니다.
운영체제 | 처리방식 |
---|---|
Android | 날짜 변경 후 확인 버튼을 선택한 후에 이벤트가 발생합니다. |
iOS, iPadOS | 날짜 변경 스핀 동작을 멈추면 이벤트가 발생합니다. |
RP | 작성일 | 설명 |
---|---|---|
88892 | 2020-03-02 | 운영체제 특성에 따른 제약사항입니다. |
imemode 속성값이 적용되지 않는 현상
윈도우 8 이후 버전의 운영체제에서는 IME 적용 방식이 변경되어 응용 프로그램마다 다른 입력 방식이 설정되며 응용 프로그램의 포커스가 바뀔 때 imemode 속성값이 적용되지 않습니다.
예를 들어 넥사크로 앱 실행 중에 메모장을 열어서 다른 작업을 하고 다시 넥사크로 앱으로 돌아왔을 때 첫 번째 포커스를 가지는 컴포넌트의 imemode 속성값이 적용되지 않습니다 (첫 번째 컴포넌트 이후 다른 컴포넌트에 포커스를 옮길 때에는 imemode 속성값이 적용됩니다).
alert, confirm 같은 창을 띄우거나 넥사크로 앱 내에서 다른 프로세스로 팝업창을 띄우고 다시 넥사크로 앱으로 포커스를 이동한 때도 마찬가지입니다.
넥사크로 앱 내에서 imemode 속성값을 유지하기 위해서는 사용자가 직접 관련 속성을 변경해주어야 합니다. 윈도우 10 운영체제에서는 [고급 키보드 설정 > 입력 방법 전환 > 각 앱 창에 다른 입력 방법을 직접 사용] 항목을 아래 그림과 같이 선택해주어야 합니다 (선택되지 않은 상태가 기본 설정입니다).
RP | 작성일 | 설명 |
---|---|---|
89164 | 2020-03-27 | 운영체제 특성에 따른 제약사항입니다. 사용자가 운영체제 설정을 변경한 경우에만 대응할 수 있습니다. |
텍스트 편집 시 ENTER 키를 입력해도 canchange, onchanged 이벤트가 발생하지 않는 현상
canchange, onchanged 이벤트는 텍스트 편집 시 ENTER 키를 입력하거나 포커스가 이동할때 value 속성값이 변경되면서 발생합니다. 하지만 일부 운영체제에서는 ENTER 키 입력 시 이벤트가 발생하지 않는 현상이 있습니다.
iOS/iPadOS 운영체제 Safari 브라우저에서 일본어 IME 입력 시 ENTER 키로 텍스트 입력을 확정하는 경우에는 이벤트가 발생하지 않습니다. ENTER 키 입력 시 keycode 값이 잘못된 값으로 처리되면서 발생하는 현상입니다.
RP | 작성일 | 설명 |
---|---|---|
89615 | 2020-08-19 | iOS/iPadOS 운영체제 Safari 브라우저에서 일본어 IME 사용 시 발생하는 현상입니다. |
팝업창에서 HttpRequest 통신을 처리할 때 창을 닫는 경우 부모창에 영향을 주는 현상
nexacro.open 메소드로 띄운 팝업창에서 HttpRequest 통신이 진행중인 상태에서 팝업창을 사용자가 닫기 버튼을 클릭해 닫는 경우 부모창이 같이 닫히거나 새로고침되는 현상이 있습니다. 네트워크가 느린 환경이거나 로딩하는 파일 크기가 큰 경우 발생할 수 있습니다.
IE 브라우저의 경우 팝업창에서 같은 PID(process ID)를 공유하고 있으며 팝업창에 문제가 생기는 경우 부모창에 영향을 줄 수 있습니다.
IE 브라우저 옵션 설정에 따라 발생하는 현상은 달라집니다. [인터넷 옵션 > 고급 > 자동 크래시 복구 사용] 항목이 체크되어 있는 경우에는 부모창이 새로고침되며 체크가 안되어 있는 경우에는 부모창이 같이 닫힙니다.
업무 환경에 따라 해당 현상이 자주 발생하는 경우 부모창에 영향을 주지 않기를 원한다면 "Hang Resistance" 기능을 비활성화해서 팝업창에 문제가 생겨도 부모창에 영향을 주지 않도록 강제할 수 있습니다. 사용자 PC 레지스트리 정보를 업데이트해야 하는 방식입니다.
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\
Type: REG_DWORD
Name: HangRecovery
Value: 0
아래 정보를 참고하세요.
https://docs.microsoft.com/en-us/troubleshoot/browsers/webpage-fails-to-get-focus-ie-9
RP | 작성일 | 설명 |
---|---|---|
89518 | 2020-08-19 | IE 브라우저 사용 시 발생하는 현상입니다. |
iOS 13 이상 버전에서 스크린 정보를 잘못된 타입으로 처리하는 현상
iOS 13 이상 운영체제에서 Safari 브라우저 실행 시 앱에서 지정한 스크린 크기를 적용하지 못하는 현상이 발생할 수 있습니다. iPhone에서는 "mobile_small" 타입의 스크린 정보를 사용해야 하지만, "desktop" 타입의 스크린 정보가 적용되는 현상입니다. iOS 13 이상 운영체제에서 아래와 같이 safari 브라우저의 "데스크탑 웹사이트 요청" 옵션이 켜져있을 때 발생하며, 해당 옵션이 켜져있으면 기기 정보를 확인할 수 없어 발생하는 현상입니다.
RP | 작성일 | 설명 |
---|---|---|
90288 | 2020-08-24 | iOS 13 이상 운영체제에서 사용자가 설정한 옵션에 따른 제약입니다. 사용자가 해당 옵션을 끄고 사용하도록 안내하는 것을 권장합니다. |
fittocontents 속성값을 설정했을 때 줄바꿈이 되는 현상
IE11 이하 브라우저에서 fittocontents 속성값을 "width" 또는 "both"로 설정하고 wordWrap 속성값을 "char" 또는 "english"로 설정했을 때 줄바꿈이 되는 현상이 발생할 수 있습니다. 폰트 타입이나 크기에 따라 IE11 이하 브라우저에서 정확한 크기를 계산하지 못하고 이로 인해 fittocontents 속성에 따라 변경된 크기가 맞지 않아 발생하는 현상입니다.
width: 120 height: 60 fittocontents: width text: Nexacro N is a platform for software development. wordWrap: char font: 11px/normal "Arial" / 12px/normal "Arial"
IE11 이하 브라우저에서 아래와 같이 폰트 크기에 따라 줄바꿈이 발생하지 않을 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
90155 | 2020-09-16 | IE11 이하 브라우저 사용 시 속성 조합에 따라 발생하는 현상입니다. IE11 이하 브라우저에서 의도치 않은 줄바꿈이 생기지 않으려면 fittocontents 속성과 wordWrap 속성을 조합해서 사용하지 않도록 주의해야 합니다. |
readonly로 설정한 편집 영역 터치 시 완료 버튼이 표시되는 현상
iOS 12 이하 버전에서는 readonly로 설정된 편집 영역 터치 시 완료 버튼이 표시되는 오류를 가지고 있습니다. 해당 현상은 iOS 13 이상 버전에서는 수정됐습니다.
아래 이미지는 readonly로 설정된 HTML input 태그 터치 시 보여지는 현상입니다.
https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_input_readonly
해당 현상은 Edit 컴포넌트의 readonly 속성값을 true로 설정했을 경우에 편집 영역을 터치하는 경우 발생합니다. readonly 속성값을 직접 지정하지 않더라도 컴포넌트 내부 동작에 의해 readonly 처리될 때도 같은 현상이 나타닙니다. 예를 들어 Combo 컴포넌트는 type 속성값을 "dropdown"으로 설정한 경우 comboedit 영역을 readonly 처리하게 되는데 이때 dropbutton이 아닌 comboedit 영역을 터치하는 경우 "완료" 버튼이 표시되는 현상이 나타납니다.
RP | 작성일 | 설명 |
---|---|---|
90694 | 2020-10-12 | iOS 12 이하 버전에서 발생하는 현상입니다. |
WebBrowser 컴포넌트에서 로딩된 콘텐츠에 대한 핀치줌 동작 제어 제약
iOS/iPadOS WRE, NRE에서는 핀치줌 동작을 제어하기 위해 HTML meta 태그 속성과 스크립트를 사용하고 있습니다. 다른 컴포넌트와 다르게 WebBrowser 컴포넌트의 경우 IFRAME 태그 영역 내 로딩된 콘텐츠의 속성 정보를 넥사크로 앱에서 알 수 없으며 핀치줌 동작을 제어할 수 없습니다.
넥사크로 앱에서 핀치줌이 동작하지 않도록 설정했더라도 WebBrowser 컴포넌트에서 로딩된 콘텐츠에서 핀치줌을 허용하고 있는 경우 WebBrowser 컴포넌트 영역 내에서 동작하는 핀치줌이 전체 앱에 영향을 줄 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
92685 | 2021-07-22 | 운영체제 특성에 따른 제약사항입니다. 로딩할 콘텐츠 내 필요한 태그와 스크립트를 직접 작성해주어야 합니다. |
특정 환경에서 일본어 IME 사용 시 제약
입력을 제한하는 속성(maxlength, inputtype 등)값을 설정한 Edit, TextArea 컴포넌트, MaskEdit 컴포넌트, MaskEditControl을 포함한 컴포넌트(Calendar, Grid 컴포넌트 등)에서 사용자가 입력하고자 하는 값과 다른 값이 입력되는 현상입니다.
윈도우 10 2004 버전 업데이트 시 설치된 Microsoft Japanese IME의 영향에 의한 제약 사항입니다.
해당 문제는 윈도우 운영체제 버전(IME 버전), 윈도우 운영체제에서 "이전 버전의 Microsoft IME 사용" 적용 여부, 브라우저 실행 환경 등에 따라 발생 현상이 다르게 나타날 수 있습니다.
실행 환경에 따라 일본어 IME 사용 시 아래와 같은 입력 오류 현상이 발생할 수 있습니다.
입력한 문자가 중복되어 입력
기존에 입력한 문자가 삭제
숫자키 입력 시 다른 값이 입력
RP | 작성일 | 설명 |
---|---|---|
94152 | 2022-03-31 | 특정 환경에서 일본어 IME 사용 시 정상적으로 값을 입력하지 못하는 현상입니다. |
Calendar 컴포넌트의 calendaredit 영역의 텍스트 정렬 상태가 기기에 따라 달라지는 현상
Calendar 컴포넌트의 popuptype 속성값을 "system"으로 설정한 경우 실행 환경에 따라 calendaredit 영역의 텍스트 정렬 상태가 달라집니다.
popuptype 속성값을 "system"으로 설정한 경우 실행 환경에 따라 HTML input 요소의 type 속성값을 "date"로 반영해 generate 된 코드를 사용하는데 해당 속성의 동작이 실행 환경에 따라 달라집니다.
실행 환경 | 처리방식 |
---|---|
Windows macOS Android(NRE) | 기본 정렬 방식은 "left"입니다. calendaredit 컨트롤의 -nexa-text-alian 속성을 지정해 정렬 방식을 변경할 수 있습니다. |
Android(WRE) | 기본 정렬 방식은 "left"입니다. 스타일 속성으로 정렬 방식을 변경할 수 없습니다. |
iOS, iPadOS | 기본 정렬 방식은 "center"입니다. 스타일 속성으로 정렬 방식을 변경할 수 없습니다. |
RP | 작성일 | 설명 |
---|---|---|
98454 | 2023-11-23 | HTML input 요소에서 type 속성값을 "date"로 설정한 경우 운영체제에 따라 동작이 달라지는 현상입니다. |
iOS 기기에서 홑따옴표 입력 시 반영되지 못하는 현상
MaskEdit 컴포넌트의 type 속성값이 "string"인 경우 format 속성값 설정 시 홑따옴표를 사용해 입력한 문자 그대로 표시하는 옵션을 제공합니다. 예를 들어 아래와 같이 속성값을 설정하면 MaskEdit 컴포넌트에는 홑따옴표로 감싼 문자를 그대로 남겨두고 "_A_" 형태로 표시됩니다.
this.MaskEdit00.format = "@'A'@";
iOS 기기에서 Smart Punctuation 기능이 활성화되어 있고 format 속성값을 사용자가 화면에 입력한 값으로 설정하는 경우 사용자가 홑따옴표(U+0027) 입력 시 아래와 같이 왼쪽 따옴표(U+2018), 오른쪽 따옴표(U+2019)로 변환해 입력합니다. 그리고 홑따옴표가 아닌 다른 문자로 인식해서 MaskEdit 컴포넌트에는 "_‘_’_" 형태로 표시됩니다.
this.MaskEdit00.format = "@‘A’@";
iOS 기기에서 Smart Punctuation 기능 활성화 여부를 확인할 수 없기 때문에 사용자에게 홑따옴표를 입력받는 기능 사용 시 유의해야 합니다. MaskEdit 컴포넌트뿐 아니라 사용자가 입력한 텍스트를 비교 처리하는 모든 기능 사용 시에도 마찬가지입니다.
RP | 작성일 | 설명 |
---|---|---|
98527 | 2023-11-30 | iOS 기기에서 Smart Punctuation 기능 사용 여부에 따라 발생하는 현상입니다. |
센스리더 사용 시 Grid 컴포넌트 트리 확장/축소 단축키를 사용하지 못하는 현상
접근성 설정 여부와 상관없이 Grid 컴포넌트의 treeuseexpandkey 속성값이 true인 경우 좌우방향키를 사용해 트리 영역 셀을 확장하거나 축소할 수 있습니다.
하지만 센스리더 사용 시에는 좌우방향키가 센스리더 단축키로 우선 적용되어 좌우방향키로 트리 영역 셀을 조작할 수 없습니다.
좌우방향키를 사용하려면 가상커서를 브라우저 모드로 변경해주어야 합니다.
Grid 컴포넌트의 treeuseexpandkey 속성값이 true이고 센스리더를 사용하는 상황이라면 Tab 키 입력으로 Grid 컴포넌트로 이동하는 경우 가상커서가 브라우저 모드로 변경되어 동작합니다. 해당 모드에서는 좌우방향키로 Grid 컴포넌트의 트리 영역 셀을 조작할 수 있습니다. Grid 컴포넌트로 접근하기 전에 사용자에게 Tab 키를 입력하도록 안내하는 방식으로 기능을 사용하도록 할 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
98654 | 2023-12-19 | 센스리더 사용 시 단축키 중복으로 발생하는 현상입니다. |
Calendar 컴포넌트 입력창에 한글이 입력 시도 시 값이 삭제되는 현상
Calendar 컴포넌트의 autoselect 속성값을 true로 설정한 경우 윈도우 11 한국어 입력 상태에서 한글을 calendaredit 영역에 입력 시 기존 값이 삭제됩니다.
예를 들어 Calendar 컴포넌트로 포커스가 이동하고 calendaredit 영역의 텍스트가 선택된 상태에서 "ㄱ" 입력 시 기존 값이 삭제됩니다.
윈도우 11 한국어 IME에서 편집 영역의 텍스트가 선택된 상태에서 한글 입력 시 잘못된 값으로 이벤트(deleteContentBackward)를 전달해서 발생하는 현상입니다. 한국어 IME 동작 오류이며 제품에서 한글 입력 시 적절한 정보를 받을 수 없어 해당 오류를 수정할 수는 없습니다.
RP | 작성일 | 설명 |
---|---|---|
97051 | 2024-1-25 | 윈도우 11 한국어 IME 오류로 발생하는 현상입니다. |
Calendar 컴포넌트에서 시스템 팝업 달력이 표시되는 동안 다른 컴포넌트에 값을 입력하지 못하는 현상
Calendar 컴포넌트의 popuptype 속성값이 “system”으로 적용되는 경우 시스템 팝업달력이 표시된 상태에서 운영체제에 따라 다른 입력 컴포넌트에 값을 입력하지 못할 수 있습니다.
일부 운영체제에서는 시스템 팝업 달력이 표시된 상태에서 다른 input node에 포커스를 이동했을 때 비정상 종료되는 현상이 있습니다. 비정상 종료를 방지하기 위해 일부 운영체제에서 동작을 제한하고 있습니다.
운영체제 | 처리방식 |
---|---|
Android, iOS | 시스템 팝업달력이 표시된 상태에서 다른 컴포넌트에 값을 입력할 수 없습니다(다른 컴포넌트로 포커스 이동을 허용하지 않습니다). |
iPadOS | 시스템 팝업달력이 표시된 상태에서 다른 컴포넌트에 값을 입력할 수 있습니다. |
RP | 작성일 | 설명 |
---|---|---|
99039 | 2024-2-19 | 일부 운영체제에서 시스템 팝업달력이 표시된 상태에서 input node 접근 시 비정상 종료되는 현상으로 인해 동작 차이가 발생하는 현상입니다. 21.0.0.1700 이후 버전에 대한 제약입니다. |
브라우저별 기능 차이
Edit 영역을 가지는 컴포넌트에서 커서 표시 방식의 차이
Edit 영역을 가지는 컴포넌트의 readonly 속성값이 true인 경우 브라우저에 따라 커서가 표시되는 방식이 다릅니다. 커서 표시 여부와 상관없이 readonly 속성값은 적용되며 Edit 영역의 텍스트를 사용자가 편집할 수 없습니다.
브라우저 | 처리 방식 |
---|---|
Firefox, IE | 커서가 표시되며 마우스 클릭 시 커서 위치가 이동 |
[NRE], Chrome, Edge, Safari | 커서가 표시되지 않음 |
RP | 작성일 | 설명 |
---|---|---|
37637 | 2014-09-24 | 개별 브라우저의 동작 방식 차이입니다. |
Style 제약 사항
Style 속성 중 넥사크로에서 지원하지 않거나 일부 브라우저만 지원하는 속성은 아래와 같습니다.
속성 | 참고 |
---|---|
edge | 입력된 값에 따라 정상적으로 동작하지 않을 수 있습니다. 정상적으로 동작하지 않은 경우에는 브라우저에 따라 보이는 형태가 다를 수 있습니다. |
cursor | 마우스 커서를 움직이지 않고 다른 속성이 바뀌면서 mouseover element가 변경되는 경우 cursor type이 변경되는 기능이 정상적으로 동작하지 않을 수 있습니다. |
RP | 작성일 | 설명 |
---|---|---|
40056 | 2015-02-26 | background > imageedge (edge) |
문자열에 줄바꿈 기호가 포함된 경우 텍스트 정렬 방식의 차이
컴포넌트의 -nexa-text-align 속성값이 "center"이고 wordwrap 속성값이 "none"인 경우 문자열에 줄바꿈 기호가 포함되어 있으면 NRE와 웹브라우저가 다르게 정렬 방식을 처리합니다.
Button, Static, FileDownload, GridCellControl 오브젝트에서 발생하는 현상입니다.
RP | 작성일 | 설명 |
---|---|---|
47603 | 2016-03-30 | 속성 적용 시 생성되는 HTML에서 whitespace pre 옵션을 사용하는데 화면에 표시되는 영역의 크기와 다르게 텍스트 영역을 기준으로 가운데 정렬을 처리합니다. NRE에서는 내부적으로 정렬 상태를 조정하는 기능이 추가되어 다르게 표시됩니다. |
hotkey 속성값이 적용되지 않는 현상
브라우저에서 사용하는 단축키를 컴포넌트의 hotkey 속성값으로 지정한 경우에 브라우저에 따라 다르게 동작할 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
48488 | 2016-07-05 | 개별 브라우저의 동작 방식 차이입니다. 브라우저에서 사용하는 단축키를 중복해서 hotkey 속성값으로 지정하지 않는 것을 권장합니다. |
FileUpload 컴포넌트 사용 시 파일 경로 표시의 차이
FileUpload 컴포넌트의 multiselect 속성값을 true로 지정한 경우 브라우저에 따라 경로를 다른 형식으로 표시합니다.
브라우저 | 처리 방식 |
---|---|
[NRE] | 파일 경로 + 파일명 |
Chrome, Edge, Firefox, IE, Safari | 파일명 |
FileUpload 컴포넌트의 multiselect 속성값을 false로 지정한 경우 브라우저에 따라 경로를 다른 형식으로 표시합니다.
브라우저 | 처리 방식 |
---|---|
[NRE] | 파일 경로 + 파일명 |
Chrome, Edge, Firefox, IE, Safari | 가상경로(fakepath) + 파일명 |
IE 브라우저의 경우 사용자의 옵션 설정에 따라 multiselect 속성값을 false로 지정한 경우에 가상경로가 아닌 실제 파일 경로로 표시될 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
69218 | 2016-09-06 | 개별 브라우저의 동작 방식 차이입니다. 파일 경로 표시가 다르더라도 파일을 업로드하는 기능은 정상 처리됩니다. |
2017-06-27 | multiselect 속성값을 false로 지정했을 때 경로 표시에 대한 설명을 추가했습니다. | |
81686 | 2018-09-05 | multiselect 속성값을 false로 지정했을 때 경로 표시에 대한 설명을 수정했습니다. Edge, IE 브라우저에서 파일 경로가 아닌 가상경로로 표시되고 있습니다. |
open 메소드 실행 시 중복된 자식 프레임 이름 처리 제약
IE 8 환경에서 nexacroAPI open 메소드 실행 시 자식 프레임 이름(ID)을 지정하는 파라미터(strName)을 같은 값으로 반복해서 실행했을 때 스크립트 에러가 발생하며 팝업창이 표시되지 못합니다.
NRE나 다른 브라우저는 같은 조건에서 스크립트 에러가 발생하지 않는데 팝업 윈도우를 처리하는 방식이 브라우저마다 다르므로 발생하는 현상입니다.
브라우저 | 동기 방식 | 처리 방식 |
---|---|---|
[NRE] | 동기 | 팝업 윈도우을 순차적으로 처리 |
Chrome | 비동기 | 최종적으로 실행한 팝업 윈도우에 대한 자바스크립트만 처리 |
Firefox | 비동기 | 최초로 실행한 팝업 윈도우에 대한 자바스크립트만 처리 |
IE | 비동기 | 중복해서 생성되는 모든 팝업 윈도우에 대한 자바스크립트를 처리. 이 과정에서 스크립트 에러가 발생 |
팝업 윈도우 처리 시 자식 프레임의 ID 처리 방식은 브라우저마다 다르며 브라우저 버전에 따라 달라질 수 있습니다. 개발 시 중복된 ID로 처리되지 않도록 주의해야 합니다.
RP | 작성일 | 설명 |
---|---|---|
70213 | 2016-12-05 | 개별 브라우저의 동작 방식 차이입니다. |
함수 내 alert, confirm 메소드가 포함된 경우 스크립트 처리 방식 차이
Chrome, Safari 브라우저를 사용하는 경우에는 함수 내에 alert, confirm 메소드가 포함된 경우에는 다른 코드를 먼저 처리하지 않습니다.
예를 들어 아래 코드의 경우 "TEST"라는 문자열을 먼저 출력하고 alert 메소드를 실행하도록 의도했지만, Chrome, Safari 브라우저에서는 alert 메소드가 먼저 실행되고 alert 창을 닫기 전에는 "TEST"라는 문자열을 출력하지 않습니다.
function fn_click() { document.write("TEST"); alert("TEST"); }
브라우저 | 처리 방식 |
---|---|
[NRE], Firefox, IE | 순서에 따라 스크립트를 실행합니다. |
Chrome, Edge, Safari | alert, confirm 메소드가 실행되고 사용자가 대화상자를 닫으면 다른 스크립트를 실행합니다. |
RP | 작성일 | 설명 |
---|---|---|
71291 | 2017-01-09 | 개별 브라우저의 동작 방식 차이입니다. |
84124 | 2019-03-07 | Safari 브라우저에서도 Chrome 브라우저와 같은 동작을 확인했습니다. |
컴포넌트의 visible 속성 변경 시 느리게 적용되는 현상
스크립트로 컴포넌트의 visible 속성값을 변경하는 경우 화면에 보이는 컴포넌트가 변경되기 전에 다음 스크립트 구문이 먼저 처리될 수 있습니다. 사용하는 PC의 하드웨어 성능이 느린 환경에서 IE 브라우저를 사용하는 경우에 자주 발생하는 현상입니다.
RP | 작성일 | 설명 |
---|---|---|
71551 | 2017-01-31 | visible 속성값을 변경했을 때 HTML 내 DOM 트리에 속성을 반영하는데 이 과정에서 하드웨어나 브라우저에 따라 반영 속도의 차이가 발생할 수 있습니다. 순차적으로 스크립트 구문이 처리되도록 조건을 설정하거나 TimerEvent를 사용해 적용 시점을 조정할 수 있습니다. |
onmouseenter, onmousemove 이벤트 발생 순서가 다른 현상
onmouseenter, onmousemove 이벤트를 가지는 컴포넌트의 경우 이벤트 발생 순서가 브라우저에 따라 다릅니다. 브라우저에 따른 이벤트 발생 순서는 아래와 같습니다.
브라우저 | 처리 방식 |
---|---|
IE | onmousemove > onmouseenter |
[NRE], Chrome, Edge, Firefox, Safari | onmouseenter > onmousemove |
RP | 작성일 | 설명 |
---|---|---|
71731 | 2017-02-10 | 개별 브라우저의 동작 방식 차이입니다. |
trackPopup 메소드 실행 시 기준 영역
trackPopup 메소드 실행 시 컴포넌트(PopupDiv, PopupMenu)를 띄워주는 기준 영역이 다릅니다. NRE는 타이틀바를 포함한 프레임 영역을 기준 영역에 포함하는 데 반해 웹브라우저는 프레임 영역을 제외하고 콘텐츠가 보이는 영역만 기준 영역으로 처리합니다. 그래서 같은 좌푯값을 지정하더라도 showtitlebar 속성값이 true인 경우에는 컴포넌트를 띄우는 위치가 달라집니다.
대체 스크립트 | 작성한 스크립트가 제대로 동작하지 않을 수 있어 메소드 기능을 수정해 WRE, NRE 버전 간 차이를 수정할 수 없습니다. 스크립트 작성 시 trackPopupByComponent 메소드를 사용하거나 NRE 프레임 영역 값을 제거하도록 계산해 같은 위치에 컴포넌트를 띄울 수 있습니다. |
---|
// trackPopupByComponent 메소드 사용 var x = this.Button00.getOffsetLeft(); var y = this.Button00.getOffsetBottom(); this.pdiv.trackPopupByComponent(this, x, y);
// NRE 프레임 영역 값 제거 var objBut = this.Button00; // 컴포넌트를 띄울 때 기준이 되는 Button var v_nX = system.clientToScreenX(objBut, 0) - system.clientToScreenX(application.mainframe, 0); var v_nY = system.clientToScreenY(objBut, parseInt(objBut.height)) - system.clientToScreenY(application.mainframe, 0); var v_sRet = this.pdiv.trackPopup (v_nX, v_nY);
RP | 작성일 | 설명 |
---|---|---|
71863 | 2017-03-14 | NRE, 웹브라우저 동작 방식 차이입니다. |
nexacro.getTextSize 결과값 처리 차이
getTextSize 메소드는 파라미터값에 따라 텍스트의 크기를 계산해 주는 메소드입니다. 하지만 실행하는 브라우저에 따라 결과값의 차이가 발생합니다.
브라우저에 따라 결과값이 달라지며 파라미터값에 따라 달라질 수 있습니다. 아래 표는 특정 파라미터값을 지정한 경우 브라우저별 결과값의 차이를 참고용으로 기재한 것입니다.
this.Static00.set_text("nexacro"); this.Static00.set_font("10 Arial"); var textSize = nexacro.getTextSize(this.Static00.text, this.Static00.font, null, "none", 0); trace(textSize.nx, textSize.ny); // 결과값
브라우저 | 결과값 |
---|---|
IE11 | 47, 15 |
[NRE], Safari | 46, 16 |
Firefox | 46, 15 |
Chrome, Edge | 47.42295837402344, 15 |
RP | 작성일 | 설명 |
---|---|---|
72660 | 2017-06-20 | 개별 브라우저의 동작 방식 차이입니다. |
2017-10-10 | 예제 코드 추가 |
synchronous 모드에서 transaction 메소드 실행 시 제약
transaction 메소드의 파라미터 중 bAsync 항목 값을 false로 지정해 synchronous 모드에서 실행하는 경우 브라우저에 따라 앱이 정상적으로 동작하지 않을 수 있습니다.
브라우저 | 관련 오류 |
---|---|
Chrome, Firefox, Edge | deprecation 메시지 출력 |
IE | transaction 종료 후 포커스를 잃어버리는 현상 |
RP | 작성일 | 설명 |
---|---|---|
74564 | 2017-07-25 | 개별 브라우저의 동작 방식 차이입니다. synchronous 모드는 성능상의 문제로 일부 브라우저에서 deprecation으로 구분하고 있으며 브라우저 버전에 따라 추가적인 기능 제약이 있을 수 있습니다. |
Edit 컴포넌트에 입력된 글자에 깜빡임 현상
Edit 컴포넌트에 텍스트 입력 후 포커스를 다른 곳으로 이동했다가 다시 Edit 컴포넌트에 포커스를 옮겼을 때 입력된 텍스트가 깜빡이거나 움직이는듯한 현상이 나타납니다.
RP | 작성일 | 설명 |
---|---|---|
75016 | 2017-07-27 | 개별 브라우저의 동작 방식 차이입니다. 윈도우 7 운영체제에서 IE 브라우저 사용 시 발생하는 현상입니다. |
Safari 브라우저에서 setPrivateProfile, getPrivateProfile 메소드 실행 시 기능 제약
Safari 브라우저 사용 시 Application 오브젝트의 setPrivateProfile, getPrivateProfile 메소드를 실행했을 때 스크립트 에러가 발생합니다. 해당 에러는 아래와 같은 경우 발생하며 Safari 브라우저 운영정책에 따라 발생하는 에러입니다.
개인정보 보호 브라우징 기능이 켜져 있는 경우
RP | 작성일 | 설명 |
---|---|---|
43492 42186 | 2015-6-25 | Safari 브라우저 사용 시 특정 옵션을 설정한 경우 localStorage 기능을 사용할 수 없습니다. 해당 옵션을 적용하지 않는 경우에는 정상적으로 메소드 기능을 사용할 수 있습니다. 해당 제약사항은 iOS, 윈도우, 맥 운영체제의 Safari 브라우저에서 발생합니다. |
Edit 컴포넌트 위에 다른 컴포넌트가 겹쳐졌을 때 캐럿이 투과되어 표시되는 현상
Edit 컴포넌트 위에 다른 컴포넌트가 겹쳐진 상태에서 아래에 위치한 Edit 컴포넌트로 포커스를 옮기고 캐럿이 표시되면 위에 겹쳐진 컴포넌트를 투과해 캐럿이 표시되는 현상이 발생합니다.
RP | 작성일 | 설명 |
---|---|---|
75777 | 2017-09-05 | IE, Edge 브라우저 사용 시 발생하는 현상입니다. 해당 브라우저에서 DIV 태그로 감싸고 있는 INPUT 태그를 처리하면서 해당 현상이 발생합니다. |
2020-03-24 | Edge(80 이상 버전) 브라우저에서는 발생하지 않는 현상입니다. 현상이 발생하는 Edge 브라우저 버전 표기를 추가했습니다. |
특정 스크립트가 일정 시간 이상 프로세스를 점유하고 있는 경우 중간에 발생하는 이벤트가 처리되지 못하는 제약
IE 브라우저에서 Form 오브젝트의 sleep 메소드를 실행하거나 For 문처럼 반복을 처리하는 스크립트가 일정 시간 프로세스를 점유하고 있는 경우 중간에 발생하는 다른 이벤트를 처리하지 못합니다.
예를 들어 sleep 메소드가 실행되고 있는 중에 Button 컴포넌트를 클릭해 이벤트를 실행하는 경우 sleep 메소드 실행 시 파라미터로 지정한 시간이 지나면 Button 컴포넌트의 이벤트를 처리합니다. 하지만 IE 브라우저의 경우에는 Button 이벤트가 처리되지 않습니다.
RP | 작성일 | 설명 |
---|---|---|
75144 | 2017-8-18 | IE 브라우저 사용 시 발생하는 현상입니다. IE 브라우저에서 코드 블로킹(Code Blocking)이 발생하는 경우, Body 영역의 포커스를 잃어버리면서 이벤트가 삭제됩니다. |
컨텍스트 메뉴에서 "실행취소" 항목 선택 시 동작 방식의 차이
IE 브라우저에서 "실행취소" 항목 실행 시 autoskip, maxlength 등의 기능 처리에 영향을 미치고 있으며 이벤트 발생 시점을 특정할 수 없어 제품 기능으로 동작을 보장할 수 없습니다.
텍스트 편집 영역을 가지고 있는 컴포넌트에서 입력된 문자열을 선택한 후 마우스 오른쪽 버튼을 클릭해 컨텍스트 메뉴를 실행해 "삭제" 또는 "잘라내기"를 실행합니다. 다른 컴포넌트로 포커스를 이동해 컨텍스트 메뉴를 실행하고 "실행취소" 선택 시 브라우저에 따라 다른 방식으로 처리됩니다.
브라우저 | 결과값 |
---|---|
Chrome, IE11, Edge | "실행취소" 선택 시 동작하지 않음 (IE는 "실행취소" 항목 비활성화) |
Firefox | 다른 컴포넌트에서 "실행취소" 항목이 비활성화되어 선택할 수 없음 |
[NRE], Safari | 컨텍스트 메뉴에 "실행취소" 항목이 표시되지 않으며 단축키 적용되지 않음 |
웹브라우저에서 INPUT 태그를 사용하는 경우에는 NRE와 일부 다르게 동작하는 부분이 있습니다. "실행취소" 항목 선택 시 웹브라우저에서 이벤트 정보를 전달하지 못해 발생하는 차이입니다.
브라우저 | 결과값 (HTML에서 INPUT 태그만 사용 시) |
---|---|
Chrome, IE11, Edge | 이전 컴포넌트로 포커스 이동하면서 입력값 원복 (IE는 "실행취소" 항목 비활성화) |
Firefox | 다른 컴포넌트에서 "실행취소" 항목이 비활성화되어 선택할 수 없음 |
Safari | "실행취소" 항목이 없지만 단축키(Ctrl+Z)를 입력하는 경우 이전 컴포넌트로 포커스 이동하면서 입력값 원복 |
RP | 작성일 | 설명 |
---|---|---|
75871 | 2017-10-10 | 개별 브라우저의 동작 방식 차이입니다. |
onbeforeexit, onexit 이벤트 내 스크립트 실행 시 제약
Application 오브젝트의 onbeforeexit, onexit 이벤트 함수 내 작성한 스크립트 중 alert, confirm 메소드가 브라우저에 따라 처리되지 않을 수 있습니다. 브라우저 내에서 이벤트는 처리하지만, 함수 내 작성된 해당 메소드는 처리하지 않습니다.
브라우저 | 결과값 |
---|---|
Chrome, Edge, Firefox, | onbeforeexit, onexit 이벤트 함수 내 해당 메소드 무시 |
[NRE], IE, Safari | onbeforeexit, onexit 이벤트 함수 내 해당 메소드 처리 |
onbeforeexit 이벤트는 HTML에서 beforeunload 이벤트를 받아서 처리하고 있습니다.
beforeunload 이벤트 내에서 해당 메소드를 무시하도록 HTML 스펙에 권고하고 있으며 브라우저에 따라 처리방식이 달라 동작 방식 차이가 발생합니다.
https://developer.mozilla.org/en-US/docs/Web/Events/beforeunload
RP | 작성일 | 설명 |
---|---|---|
76480 | 2017-10-10 | 개별 브라우저의 동작 방식 차이입니다. |
85783 | 2019-06-28 | onexit 이벤트에서도 같은 현상을 확인하고 제약으로 추가합니다. |
텍스트 편집 영역을 가지고 있는 컴포넌트를 빠르게 이동하는 경우 포커스가 이동되지 않는 현상
iOS 운영체제를 사용하는 디바이스에서 Safari 브라우저를 사용하는 경우 Edit 컴포넌트처럼 텍스트 편집 영역을 가지고 있는 컴포넌트를 터치 동작으로 빠르게 이동할 때 포커스는 이동하지 않지만 status 상태는 변경되는 현상이 있습니다.
터치 동작을 빠르게 이동할 때 포커스가 이동하지 않는 현상은 iOS 운영체제에서 Safari 브라우저의 제약사항입니다. 넥사크로에서는 브라우저에서 터치 이벤트가 발생할 때 status 상태를 변경하고 있는데 Safari 브라우저에서 터치 이벤트는 발생하지만 포커스를 이동하지 않고 있기 때문에 status 상태가 변경되는 현상도 같이 보이게 됩니다. 브라우저에서는 정상적으로 정보를 전달하면서 포커스가 이동하지 못하는 것이기 때문에 넥사크로에서 이를 보정할 수 없습니다.
RP | 작성일 | 설명 |
---|---|---|
77192 | 2017-11-27 | iOS 운영체제에서 Safari 브라우저 사용 시 발생하는 제약사항입니다. status 상태는 정상적으로 브라우저에서 발생하는 이벤트를 처리하면서 발생하는 현상이며 브라우저 제약사항이 해소되면 더 이상 문제가 되지 않습니다. |
Div 컴포넌트 내 텍스트 편집 영역을 가지고 있는 컴포넌트의 일부만 보이는 경우 해당 컴포넌트로 포커스 이동 시 깜빡이는 현상
IE 브라우저에서는 Div 컴포넌트 내 텍스트 편집 영역을 가지고 있는 컴포넌트의 일부가 감추어져 있는 경우 해당 컴포넌트로 포커스가 이동하면 컴포넌트가 모두 보이도록 내부적으로 스크롤 위치를 이동합니다. 넥사크로에서는 사용자가 의도하지 않은 스크롤 위치 이동 시에는 원래의 위치로 되돌리고 있는데 이 과정에서 컴포넌트가 깜빡이는 것처럼 보일 수 있습니다.
일반적인 화면 구성 시에는 Div 컴포넌트 내에 컴포넌트가 감추어지도록 배치하지 않지만 사용자가 Div 컴포넌트의 크기를 조정할 수 있도록 구성한 경우에는 Div 컴포넌트의 크기 조정 시 계속 깜빡임 현상이 발생할 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
76992 | 2017-11-28 | IE 브라우저 사용 시 발생하는 제약사항입니다. |
텍스트 편집 영역을 가지고 있는 컴포넌트에 포커스가 옮겨지는 시점에 waitcursor가 표시되는 경우 캐럿 위치가 옮겨지는 현상
텍스트 편집 영역을 가지고 있는 컴포넌트에 마우스를 클릭해 포커스를 옮기는 시점과 transaction 메소드나 setWaitCursor 메소드를 호출하는 시점이 겹치는 경우 마우스를 클릭한 위치에 캐럿이 표시되지 않고 편집 영역 마지막 위치로 캐럿 위치가 옮겨지는 현상이 발생합니다.
IE 브라우저에서만 발생하는 현상이며 waitcursor를 표시하기 위한 레이어가 활성화되면서 텍스트 편집 영역과 겹치는 경우 발생하는 현상입니다. 해당 현상은 IE 브라우저에서 INPUT 태그 위에 DIV 태그가 겹쳐지는 경우에 발생합니다.
RP | 작성일 | 설명 |
---|---|---|
77440 | 2017-12-14 | 개별 브라우저의 동작 방식 차이입니다. IE 브라우저 사용 시 발생하는 현상입니다. |
컴포넌트의 enable 속성값이 false인 경우 이벤트가 상위 컴포넌트로 전달되는 방식 차이
텍스트 편집 영역을 가지고 있는 컴포넌트의 enable 속성값이 false인 경우 해당 영역을 마우스로 클릭했을 때 이벤트의 상위 컴포넌트(Div 또는 Form)로 전달되는 동작이 브라우저에 따라 다르게 처리됩니다.
브라우저 | 처리 방식 |
---|---|
Firefox | 상위 컴포넌트로 이벤트 전달하지 않음 |
[NRE], Chrome, Edge, IE, Safari | 상위 컴포넌트로 이벤트 전달함 |
아래와 같이 작성한 HTML 문서로 테스트해볼 수 있습니다. 첫 번째 INPUT 요소를 클릭했을 때 상위 컴포넌트로 이벤트를 전달하는 브라우저는 div 태그의 onmousedown 이벤트를 처리하지만 Firefox, Edge 브라우저에서는 이벤트를 처리하지 못합니다.
<div onmousedown="console.log('div onmousedown')"> <input type="text" disabled> <input type="text"> </div>
컴포넌트의 텍스트 편집 영역에서만 해당 제약이 발생합니다. 예를 들어 Calendar 컴포넌트를 사용하는 경우 텍스트 편집 영역 클릭 시에는 이벤트가 전달되지 않지만 컴포넌트 내 Button이나 DatePicker 영역을 클릭하는 경우에는 이벤트가 전달됩니다.
RP | 작성일 | 설명 |
---|---|---|
77734 | 2018-01-16 | 개별 브라우저의 동작 방식 차이입니다. |
콜백함수에서 파일 대화상자를 띄우지 못하는 제약
transaction 메소드 실행 후 설정된 콜백함수 내에서 파일 대화상자를 실행하는 메소드를 호출하는 경우 특정 웹브라우저에서는 파일 대화상자를 띄우지 못합니다. 예를 들어 콜백함수 내에서 ExcelImportObject 오브젝트의 importData 메소드를 호출하더라도 파일 대화상자를 띄우지 못합니다.
사용자가 직접 마우스를 클릭해서 발생하는 이벤트가 아니고 스크립트에서 생성한 이벤트는 isTrusted 속성값이 false로 설정되는데, 특정 웹브라우저에서는 isTrusted 속성값에 따라 일부 액션이 제한될 수 있습니다.
브라우저 | 처리 방식 |
---|---|
Firefox | 파일 대화상자를 띄우지 못합니다. |
[NRE], Chrome, IE, Firefox, Edge, Safari | 실행 제약이 없습니다. IE는 isTrusted 속성값을 지원하지 않습니다. |
RP | 작성일 | 설명 |
---|---|---|
83198 | 2018-12-18 | NRE, 웹브라우저 동작 방식 차이입니다. |
2020-03-24 | 2020년 2월 최신 브라우저 기준으로 동작 확인하고 제약사항을 수정했습니다. |
trackPopup 메소드 실행 전 alert, confirm 메소드 실행 시 컴포넌트가 표시되지 않는 제약
PopupDiv, PopupMenu 컴포넌트의 trackPopup 메소드를 실행하기 전에 alert, confirm처럼 사용자가 버튼을 클릭해서 대화상자를 닫는 메소드가 실행되는 경우(아래 코드 참조) trackPopup 메소드를 실행되지 않는 것처럼 보이는 현상이 일부 브라우저에서 발생합니다.
this.Button00_onclick = function(obj:nexacro.Button,e:nexacro.ClickEventInfo) { confirm('test'); this.PopupMenu00.trackPopup(0,0); };
trackPopup 메소드는 정상적으로 실행되고 있지만, 대화상자를 닫을 때 deactivate 이벤트가 발생하는 동시에 trackPopup 메소드가 실행되면서 컴포넌트가 표시되자마자 닫힙니다.
해당 제약은 Google Chrome, Opera 브라우저에서 발생하고 있으며, alert이나 confirm 메소드와 trackPopup 메소드를 순차적으로 사용하지 않아야 합니다.
RP | 작성일 | 설명 |
---|---|---|
83521 | 2019-02-13 | 웹 브라우저 동작 방식 차이입니다. |
로딩 시 편집 영역을 가지는 컴포넌트가 첫 번째 포커스일 때 동작 방식의 차이
화면 로딩 시 첫 번째 포커스가 편집 영역을 가지는 컴포넌트인 경우 운영체제, 브라우저에 따라 동작 방식이 다릅니다.
브라우저 | 캐럿 | 키패드 표시 |
---|---|---|
Desktop 환경 | O | 해당 없음 |
Android NRE | O | O |
Android Default Web Browser | O | X |
iOS NRE | X | X |
iOS Default Web Browser | X | X |
RP | 작성일 | 설명 |
---|---|---|
81363 | 2019-01-07 | 운영체제와 웹브라우저에 따라 처리 방식이 달라 발생하는 제약입니다. |
TextArea 컴포넌트에 내용 입력 시 키패드가 올라오면서 캐럿 위치가 화면을 벗어나는 현상
TextArea 컴포넌트에 여러 줄의 텍스트가 입력된 상태에서 특정 위치로 캐럿 이동 시 키패드가 올라오면서 캐럿 위치가 화면에 표시되지 못하는 제약입니다. TextArea 컴포넌트가 키패드가 올라왔을 때 화면으로 표시되는 영역보다 큰 경우에는 캐럿 위치를 모든 케이스에 맞출 수 없습니다.
안드로이드 운영체제 기본 브라우저에서 실행 시 해당 제약이 확인되었으며 다른 실행 환경에서도 발생할 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
81443 | 2019-01-07 | 운영체제와 웹브라우저에 따라 처리 방식이 달라 발생하는 제약입니다. |
컴포넌트의 padding 속성 적용 시 텍스트가 잘려서 표시되는 현상
컴포넌트에 padding 속성 적용 시 텍스트가 표시되는 영역과 padding 속성이 적용된 영역이 겹치는 경우 브라우저와 컴포넌트에 따라 다르게 표시됩니다.
아래의 경우 Edit, Button 컴포넌트의 padding 속성값을 20px로 지정했습니다. NRE의 경우에는 padding 영역만큼 텍스트가 잘려서 표시되는 반면, 웹브라우저에서는 컴포넌트에 따라 padding 속성값을 일부만 적용하고 텍스트는 잘리지 않게 표시합니다.
브라우저 | 처리 방식 |
---|---|
[NRE] | padding 영역에 겹치는 텍스트는 잘려서 표시됩니다. |
Edge, Firefox, IE, Chrome, Safari | padding 영역과 겹치는 경우 텍스트의 위치가 조정되며 텍스트가 잘려서 표시되지 않습니다. |
RP | 작성일 | 설명 |
---|---|---|
78470, 78181 | 2018-03-02 | 운영체제와 웹브라우저에 따라 처리 방식이 달라 발생하는 제약입니다. |
특정 스타일 조건에서 텍스트가 잘려서 표시되는 현상
상하 padding 속성값을 적용하지 않았을 때 특정 글꼴을 적용하면 텍스트 아랫부분이 잘려서 표시합니다.
조건 | 처리 방식 |
---|---|
윈도우 7, 윈도우 8 운영체제에서 IE10 브라우저 사용 시 | 텍스트가 잘려서 표시됩니다. |
padding 속성값에서 강제적으로 상하 padding 속성값을 설정하거나 다른 글꼴을 사용하면 텍스트가 잘려 보이는 현상을 우회할 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
84219 | 2019-03-20 | 운영체제와 웹브라우저에 따라 처리 방식이 달라 발생하는 제약입니다. |
wordwrap 속성값이 "english"인 경우 텍스트가 잘려서 표시되는 현상
컴포넌트의 wordWrap 속성값이 "english"인 경우 특정 너비 이하로 컴포넌트의 크기가 변경되면 NRE와 웹브라우저가 다르게 텍스트를 표시합니다.
아래 이미지에서 빨간 테두리 선으로 표시한 부분은 크롬 브라우저에서 실행한 결과이고 테두리 선이 없는 쪽은 NRE에서 실행한 결과입니다. 전체 텍스트를 표시할 정도의 width 속성값을 설정한 경우에는 NRE와 웹브라우저가 같은 결과값을 보여주지만, 전체 텍스트를 표시하지 못할 정도로 width 속성값을 작게 지정한 경우에 NRE는 텍스트가 글자 단위로 줄바꿈 되어 표시되지만 웹브라우저는 영역을 벗어난 텍스트가 잘린 상태로 표시합니다.
TextArea 컴포넌트를 제외한 wordWrap 속성을 가진 컴포넌트에서 발생하는 현상입니다.
wordwrap 속성값이 "none"인 경우 텍스트 정렬 방식이 다르게 처리되는 제약 사항은 아래 항목을 참조하세요.
RP | 작성일 | 설명 |
---|---|---|
82114 | 2019-03-14 | 운영체제와 웹브라우저에 따라 처리 방식이 달라 발생하는 제약입니다. |
FileUpload 컴포넌트에서 파일 선택 대화상자에서 취소 버튼 클릭 시 동작이 다른 현상
FileUpload 컴포넌트에서 [찾기] 버튼을 클릭해 파일 선택 대화상자를 열어 파일을 선택합니다. 그리고 다시 [찾기] 버튼을 클릭한 후 파일 선택 대화상자에서 파일을 선택하지 않고 [취소] 버튼을 클릭하고 창을 닫으면 이전 선택한 파일 정보가 삭제됩니다.
[취소] 버튼 클릭 후 이전 선택한 파일이 취소되기 때문에 filelist 속성에서 해당 값이 삭제되고 onitemchanged 이벤트가 발생합니다. 해당 현상은 구글 크롬 브라우저에서 실행 시에만 발생합니다.
-- 파일 선택 시 onitemchanged 이벤트 발생 onitemchanged / this.FileUpload00.filelist[e.index]: [object VirtualFile] onitemchanged / e.newvalue: C:\fakepath\a.png onitemchanged / e.oldvalue: -- 파일을 선택하지 않고 [취소] 버튼 클릭 시 onitemchanged 이벤트 발생 onitemchanged / this.FileUpload00.filelist[e.index]: undefined onitemchanged / e.newvalue: onitemchanged / e.oldvalue: C:\fakepath\a.png
브라우저 | 처리 방식 |
---|---|
Chrome, Edge | [취소] 버튼 클릭 시 이전 선택한 파일 정보를 삭제합니다. [취소] 버튼 클릭 시 onitemchanged 이벤트가 발생합니다. |
[NRE], IE, Firefox, Safari | [취소] 버튼 클릭 시 아무 동작도 하지 않습니다. |
해당 건에 대한 이슈는 등록되어 있지만, 브라우저의 기능으로 답변이 올라와 있습니다.
https://bugs.chromium.org/p/chromium/issues/detail?id=2508
해당 동작은 크롬 브라우저에서 <input type="file"> 형태의 태그 실행 시에도 확인할 수 있습니다.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file
RP | 작성일 | 설명 |
---|---|---|
84900 | 2019-04-23 | 개별 브라우저의 동작 방식 차이입니다. |
텍스트 편집 영역을 가진 컴포넌트가 마우스 휠 동작으로 스크롤 이동 시 화면을 벗어나는 경우 동작 차이
Edit, TextArea 컴포넌트처럼 텍스트 편집 영역을 가진 컴포넌트에 텍스트 입력 도중 마우스 휠을 사용해 화면을 움직여서 컴포넌트가 화면 밖으로 벗어나는 경우 텍스트를 계속 입력하면 일부 브라우저는 컴포넌트의 위치에 따라 스크롤 위치를 변경하지만 일부 브라우저는 스크롤 위치를 변경하지 않습니다.
IE 브라우저의 경우 스크롤 위치를 변경하면서 화면 밖에 있었던 컴포넌트를 화면 가장 위쪽에 표시되도록 합니다.
스크롤 위치는 이동하지 않더라도 컴포넌트의 포커스와 캐럿은 그대로 유지되기 때문에 텍스트를 계속 입력할 수는 있습니다.
브라우저 | 처리 방식 |
---|---|
IE | 스크롤 위치를 입력 포커스가 있는 컴포넌트로 이동합니다. 텍스트는 정상적으로 입력됩니다. |
[NRE], Chrome, Edge, Firefox, Safari | 스크롤 위치는 이동하지 않습니다. 텍스트는 정상적으로 입력됩니다. |
RP | 작성일 | 설명 |
---|---|---|
84876 | 2019-04-24 | 개별 브라우저의 동작 방식 차이입니다. |
2020-03-24 | 2020년 2월 최신 브라우저 기준으로 동작 확인하고 제약사항을 수정했습니다. |
WebBrowser 컴포넌트에서 로딩한 컨텐츠 포커스 이동 시 키패드 제어 차이
NRE를 사용하는 경우 WebBrowser 컴포넌트 url 속성값으로 지정한 컨텐츠에 있는 텍스트 편집 영역에 포커스를 이동했을 때 키패드가 올라오면서 편집 영역을 가리는 현상이 발생합니다.
브라우저 | 처리방식 |
---|---|
웹브라우저 | 키패드가 편집 영역을 가리지 않습니다. |
[NRE] | 키패드가 편집 영역을 가립니다. |
RP | 작성일 | 설명 |
---|---|---|
83857 | 2019-03-26 | 개별 브라우저의 동작 방식 차이입니다. |
swf 콘텐츠 위에 PopupDiv 컴포넌트가 배치되는 경우 border 속성이 표시되지 않는 현상
swf 콘텐츠 위에 HTML 콘텐츠가 배치되는 경우 여러 제약이 발생할 수 있습니다. 제목처럼 IE 브라우저에서 swf 콘텐츠 위에 PopupDiv 컴포넌트를 배치했을 때 border 속성이 표시되지 않는 경우에는 wmode="transparent" 옵션을 추가해서 swf 콘텐츠를 배치해야 합니다.
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="600" height="200" id="myFlashContent"> <param name="movie" value="./logo.swf" /> <param name="wmode" value="transparent" /> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="./logo.swf" width="800" height="200"> <param name="wmode" value="transparent" /> <!--<![endif]--> <a href="http://www.adobe.com/go/getflashplayer"> <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /> </a> <!--[if !IE]>--> </object> <!--<![endif]--> </object>
해당 이슈는 꽤 오래전부터 발생하던 것이며 넥사크로와 무관하게 swf 콘텐츠와 관련된 제약입니다.
https://stackoverflow.com/questions/2040887/div-z-index-issue-with-flash-movie
RP | 작성일 | 설명 |
---|---|---|
83596 | 2019-04-03 | 개별 브라우저의 동작 방식 차이입니다. |
웹브라우저에서 MainFrame 오브젝트의 onclose 이벤트 발생하지 않는 현상
웹브라우저에서 탭을 닫거나 웹브라우저 자체를 종료하는 경우 MainFrame 오브젝트의 onclose 이벤트는 발생하지 않습니다. 브라우저별로 onclose 이벤트가 발생하는 경우는 아래와 같습니다.
브라우저 | onclose 이벤트 발생하는 경우 |
---|---|
[NRE], 웹브라우저 | Application 오브젝트의 exit 메소드 호출 시 |
[NRE] | MainFrame 오브젝트의 타이틀바 영역에서 닫기 버튼 클릭 시 |
RP | 작성일 | 설명 |
---|---|---|
85783 | 2019-06-28 | NRE, 웹브라우저 동작 방식 차이입니다. |
Plugin 컴포넌트 위에 PopupDiv 컴포넌트가 배치되는 경우 border 속성이 표시되지 않는 현상
Plugin 컴포넌트에서 ActiveX 콘텐츠(Windowed plugin)를 로딩하고 그 위에 PopupDiv 컴포넌트를 배치했을 때 PopupDiv 컴포넌트와 Plugin 컴포넌트가 겹쳐지는 영역에서 border 속성이 표시되지 않습니다. border 속성을 표시하기 위해서는 PopupDiv 컴포넌트의 구조를 수정해야 하는데 영향도가 클 수 있어 오류를 수정하지 않고 현재의 상태를 유지하고 있습니다.
RP | 작성일 | 설명 |
---|---|---|
85137 | 2019-05-30 | 개별 브라우저의 동작 방식 차이입니다. |
Grid 컴포넌트에서 브라우저에 따라 oncelldblclick 이벤트가 다르게 처리되는 현상
Grid 컴포넌트 Cell 오브젝트의 속성 중 edittype 속성값을 셀 클릭 시에 입력 컨트롤이 활성화되는 값(button, date, mask, readonly, text, textarea 등)으로 설정한 경우 해당 셀에서 더블클릭 동작 시 oncelldblclick 이벤트가 브라우저에 따라 발생하지 않는 경우가 있습니다.
Cell 오브젝트의 경우 클릭 동작 시 edittype 속성에 따라 새로운 컨트롤이 노출되는데, 이 과정에서 브라우저에 따라 더블 클릭 동작을 처리하지 못하는 현상입니다.
브라우저 | 처리 방식 |
---|---|
Firefox | oncellclick -> oncellclick |
[NRE], Chrome, Edge, IE | oncellclick -> oncellclick -> oncelldblclick |
RP | 작성일 | 설명 |
---|---|---|
84981 | 2019-07-12 | 개별 브라우저의 동작 방식 차이입니다. |
WebBrowser 컴포넌트에서 휠 스크롤이 동작하지 않는 현상
WebBrowser 컴포넌트의 url 속성값으로 현재 도메인과 다른 도메인 컨텐츠를 설정한 경우 호출된 컨텐츠에 스크롤바가 없으며(강제로 스크롤바를 없앤 경우), 컨텐츠 크기로 인해 WebBrowser 컴포넌트에 스크롤바가 활성화된 경우 휠 스크롤이 동작하지 않습니다.
브라우저 | 처리 방식 |
---|---|
Chrome, Edge, Firefox, IE, Safari | 휠 동작 이벤트 처리되지 않음 |
[NRE] | 휠 동작으로 컨텐츠 스크롤할 수 있음 |
RP | 작성일 | 설명 |
---|---|---|
86008 | 2019-09-18 | Cross Domain 환경일 경우 same-origin 정책으로 인해 IFRAME에서 발생하는 이벤트 핸들링이 되지 않는 제약입니다. |
일본어 IME 입력 중 입력 문자를 빠르게 입력하는 경우 오류
MaskEdit 컴포넌트의 type 속성값을 "string", format 속성값을 "99-99-99"로 설정하고 일본어 IME 입력 시 아래와 같은 경우 캐럿 위치나 입력값이 잘못 처리될 수 있습니다.
키패드로 숫자를 빠르게 입력하는 경우
일본어 IME 입력 중 미확정 문자를 보정하는 과정에서 빠른게 입력하는 경우
format 속성값은 예시이며, 다른 설정값에서도 제약이 발생할 수 있습니다.
MaskEditControl을 사용하는 Calendar, Grid, Spin 컴포넌트에서도 같은 현상이 발생할 수 있습니다.
DOM 레벨에서 캐럿 위치 처리 방식에 대한 브라우저 별 차이로 발생하는 문제이며 넥사크로에서 이를 보정할 수 없습니다.
RP | 작성일 | 설명 |
---|---|---|
89301 88784 | 2020-06-11 | 윈도우 운영체제 Chrome, Edge(80 이상 버전)에서 발생합니다. 개별 브라우저의 동작 방식 차이입니다. |
system.print 메소드 실행 시 2페이지 이후 콘텐츠를 출력하지 못하는 현상
출력할 대상 콘텐츠가 2페이지가 넘어가는 경우 Firefox 브라우저에서 system.print 메소드 실행 시 2페이지 이후 콘텐츠를 출력하지 못하는 현상이 발생합니다.
position:absolute 스타일을 사용한 HTML/CSS 콘텐츠에서도 2페이지 이후 콘텐츠를 출력하지 못하는 현상이 발생합니다.
해당 현상은 position:absolute 스타일 관련 브라우저 버그로 등록되어 있습니다.
https://bugzilla.mozilla.org/show_bug.cgi?id=546559
https://bugzilla.mozilla.org/show_bug.cgi?id=179135
RP | 작성일 | 설명 |
---|---|---|
89569 | 2020-06-26 | Firefox 브라우저에서 발생합니다. 개별 브라우저의 동작 방식 차이입니다. |
일본어 입력 시 확정 전 value 속성값으로 반영되는 현상
Chrome, Edge 브라우저에서 일본어 IME에서 입력 후 확정한 문자열을 CTRL+A 단축키로 선택한 상태에서 첫 번째 글자와 같은 글자를 다시 입력하면 확정하기 전에 입력한 글자가 value 속성값으로 반영될 수 있습니다.
예를 들어 Edit 컴포넌트에 "あああ" 문자열을 입력하고 확정한 후 CTRL+A 단축키로 문자열을 선택한 상태에서 "あ"를 입력할 때 value 속성값은 아래와 같이 반영됩니다.
브라우저 | value |
---|---|
Chrome, Edge | あ |
[NRE], Firefox, IE, Safari | あああ |
RP | 작성일 | 설명 |
---|---|---|
89944 | 2020-09-07 | 개별 브라우저의 동작 방식 차이입니다. |
MaskEdit 컴포넌트 텍스트 편집 영역에 포커스가 있는 경우 IME 동작 차이
MaskEdit 컴포넌트는 type, format 속성 설정에 따라 제한된 ASCII 문자만 입력할 수 있습니다.
사용자 편의를 위해 MaskEdit 컴포넌트의 텍스트 편집 영역에 포커스가 있을 때 IME 사용 제어가 가능한 일부 브라우저에서 IME를 비활성화 상태(영문자 입력 모드)로 변경합니다. IME 비활성화 상태에서는 ASCII 문자 입력만 허용됩니다. IME 사용 제어를 할 수 없는 Chrome, Edge 브라우저에서 IME가 활성화된 상태(한글, 일본어, 중국어 입력 모드)인 경우에는 문자 입력 시 문자 입력을 허용하지 않거나 일부 문자만 허용합니다.
브라우저 | 포커스 시 IME 처리 방식 |
---|---|
[NRE], IE, Firefox | IME 비활성화 |
Chrome, Edge | (중국어, 일본어 IME) IME 활성화 시 문자를 입력할 수 없습니다. (한국어 IME) IME 활성화 시 숫자, 특수문자만 입력할 수 있으며 다른 문자는 입력할 수 없습니다. |
한국어, 일본어 IME 사용 시 IME가 비활성화되면 input mode 표시 아이콘이 아래와 같이 'X'로 표시됩니다. 실행 환경에 따라 'X' 표시가 나오지 않을 수도 있습니다. 중국어 IME는 input mode 표시 아이콘이 변경되지 않습니다.
NRE 실행 시에는 한국어, 일본어, 중국어 IME input mode 표시 아이콘을 영문자 입력 모드로 강제 변경하고 변경할 수 없게 합니다.
IME 비활성화는 CSS ime-mode 속성을 사용하고 있습니다.
해당 속성은 Deprecated 상태이며 브라우저 제조사 업데이트에 따라 지원이 중단될 수 있습니다.
https://developer.mozilla.org/en-US/docs/Web/CSS/ime-mode
RP | 작성일 | 설명 |
---|---|---|
90516 | 2021-06-09 | 개별 브라우저의 동작 방식 차이입니다. |
93598 | 2021-12-16 | Chrome, Edge 브라우저에서의 동작 설명과 한국어, 일본어, 중국어 IME 사용 시 제약 사항 설명을 보완합니다. |
SVG 파일 사용 시 제약 사항
이미지 파일을 지정할 수 있는 속성이나 메소드에서 SVG 파일을 사용할 수 있습니다. 넥사크로 스튜디오에서도 이미지 리소스 파일로 SVG 파일을 사용할 수 있습니다.
SVG 파일은 20.0.0.700 이후 버전부터 지원합니다.
NRE SVG 파일 사용 시 제약
항목 | 설명 (NRE 제약) |
---|---|
속성 | SVG에서 viewBox 요소, width, height 속성을 설정해야 합니다. |
단위 | width, height 속성값 설정 시 "px" 단위로만 설정할 수 있습니다. "%" 단위는 사용할 수 없습니다. |
Data URI | SVG 파일이 아닌 Data URI 형태로 설정할 수 없습니다. |
스타일 | style 요소는 지원하지 않고 각 요소의 style 속성만 지원합니다.
|
Splash Image | Build App > Splash > Image File(Splash Image) 설정 시에는 SVG 파일을 지원하지 않습니다. |
기타 | feComposite 요소의 in 속성에서 'BackgroundImage'를 지원하지 않습니다. |
NRE 지원 사양은 skia 지원 범위와 제약 사항에 따라 달라질 수 있습니다.
20.0.0.700 버전은 skia chrome/m97 버전 기준으로 동작합니다.
viewBox 요소의 width, height 속성과 SVG의 width, height 속성값은 같게 설정하는 것을 권장합니다. 값이 다른 경우 성능에 영향을 미칠 수 있습니다.
WRE SVG 파일 사용 시 제약
기본적으로 WRE는 각 브라우저의 지원 범위와 제약 사항을 따릅니다.
단, 아래와 같은 경우 컴포넌트의 이미지 관련 속성값으로 SVG 파일 사용 시 제약이 있습니다.
컴포넌트의 fittocontents 속성값을 'none'이 아닌 값으로 설정
컴포넌트의 너비나 높이를 자동 조절하는 속성 설정
항목 | 설명 (WRE에서 크기 자동 조절 속성 설정 시) |
---|---|
속성 | SVG에서 viewBox 요소, width, height 속성을 설정해야 합니다. |
단위 | width, height 속성값 설정 시 "px" 단위로만 설정할 수 있습니다. "%" 단위는 사용할 수 없습니다. |
넥사크로 스튜디오 SVG 파일 사용 시 제약
Resource Explorer에서 [Theme > image editor], [ImageResource]에서 이미지 미리보기를 지원하지 않습니다. SVG 파일 선택 시에는 대체 문구와 이미지로 표시합니다.
속성창에서 SVG 파일을 속성값으로 선택 시 SVG 요소 내 viewBox, width, height 속성이 없는 경우 Output 창에 지원하지 않는다는 경고 메시지를 표시합니다.
미지원 속성, 메소드
속성, 메소드 설명에 특정 파일 확장자만 사용할 수 있다고 명시된 경우에는 SVG 파일을 사용할 수 없습니다.
RP | 작성일 | 설명 |
---|---|---|
93266 | 2022-03-29 | 개별 브라우저의 동작 방식 차이입니다. |
open 메소드 실행으로 열린 팝업창 주소 표시줄에 포커스를 이동하고 F5키 또는 엔터키 입력 시 창이 닫히는 현상
open 메소드를 실행하고 열린 팝업창에서 사용자가 주소 표시줄에 포커스를 이동하고 F5키를 입력하거나 엔터키를 입력해서 새로 고침을 시도하는 경우 창이 닫힙니다.
사용자가 해당 동작 시 브라우저에서 전달되는 이벤트 정보에 정확한 정보가 포함되어 있지 않아 사용자가 창을 닫으려고 하는 것인지 새로 고침을 하려고 하는 것인지 확인할 수 없습니다. 때문에 해당 동작 시에는 팝업창을 닫는 것으로 처리하고 있습니다.
사용자 동작 | Desktop NRE | Desktop WRE |
---|---|---|
주소 표시줄에 포커스 F5키 또는 엔터키 입력 | 주소 표시줄 표시하지 않음 | 팝업창 닫힘 onbeforeclose, onclose 이벤트 발생하지 않음 |
Form에 포커스 F5키 입력 | onkeydown, onkeyup 이벤트 발생 새로고침 처리하지 않음 | onkeydown, onkeyup 이벤트 발생하지 않음 새로고침 처리하지 않음 |
컨텍스트 메뉴 실행 후
새로고침(Reload) 선택
새로고침 처리
팝업창 닫힘
onbeforeclose, onclose 이벤트 발생하지 않음
RP | 작성일 | 설명 |
---|---|---|
96277 | 2023-04-10 | 개별 브라우저의 동작 방식 차이입니다. |
제품 기능 제약
Calendar 컴포넌트의 popuptype 속성값에 따른 제약
모바일 디바이스를 사용하는 환경에서 Calendar 컴포넌트의 popuptype 속성값이 "system"일 경우 Calendar 컴포넌트에서 지원하는 이벤트가 아래와 같이 달라집니다.
지원여부 | 대상 이벤트 |
---|---|
지원 | canchange, onchanged, oncloseup, oncontextmenu, ondrag, ondragenter, ondragmove, ondrop, ondropdown, oneditclick, oninnerdatachanged, oninput, onkeydown, onkeyup, onkillfocus, onlbuttondown, onlbuttonup, onmouseenter, onmouseleave, onmousemove, onmove, onrbuttondown, onrbuttonup, onsetfocus, onsize, ontouchend, ontouchmove, ontouchstart |
미지원 | ondayclick |
RP | 작성일 | 설명 |
---|---|---|
47974 | 2016-05-13 | Calendar 컴포넌트의 popuptype 속성값에 따라 일부 이벤트가 지원되지 않습니다. |
ExcelExportObject 오브젝트에서 생성한 엑셀 파일의 셀을 복사해 다른 문서로 붙여 넣으면 색상이 달라지는 현상
ExcelExportObject 오브젝트의 exporttype 속성값을 nexacro.ExportTypes.EXCEL 상수값으로 지정한 경우 내려받은 엑셀 파일을 열어 셀 항목을 복사해서 새로운 엑셀 문서에 복사할 때 지정된 색은 복사되지 않습니다.
exporttype 속성값의 default 값은 nexacro.ExportTypes.EXCEL 입니다.
RP | 작성일 | 설명 |
---|---|---|
48114 | 2016-05-18 | Excel 97~2003 버전의 경우 사용자가 지정한 색 정보는 해당 파일에만 적용됩니다. 셀 항목을 복사해 다른 파일로 붙여 넣는 경우에는 해당 색 정보를 찾을 수 없어 사용자가 원하는 색이 아닌 다른 색으로 처리됩니다. |
화면 확대, 축소 시 Grid 컴포넌트의 셀 선택 기능 제약
Grid 컴포넌트의 selecttype 속성값이 "multiarea"일 경우 브라우저를 확대하거나 축소한 상태에서 Cell 영역을 마우스로 드래그해서 다중 선택하는 경우 선택영역이 원하는 영역과 다르게 선택됩니다. Grid 컴포넌트 내 다중 선택 시 Grid 컴포넌트 영역 밖으로 마우스 포인터가 벗어나더라도 선택 기능이 동작해야 하므로 스크린 좌푯값을 사용합니다. 이 과정에서 선택영역이 다르게 선택되는 문제가 발생합니다.
브라우저 | 제약 발생 환경 |
---|---|
웹브라우저 | 브라우저 자체 확대, 축소 기능 사용 시 |
RP | 작성일 | 설명 |
---|---|---|
70879 | 2017-01-17 | 선택영역이 다르게 선택되는 문제는 아래와 같은 원인을 가지고 있습니다. 1) 확대 또는 축소했을 때 화면상에서 컴포넌트의 크기는 변하지만, HTML 노드에서 크기는 바뀌지 않습니다. 2) 확대 또는 축소했을 때 화면상에서 컴포넌트의 크기가 변하면서 마우스가 컴포넌트 위에 머무는 범위가 달라집니다. |
WebBrowser 컴포넌트의 인쇄 시 제약
System.print 메소드 호출 시 창 크기가 작아 스크롤바가 활성화되면서 화면에 표시되지 않는 영역까지 인쇄할 수 있습니다. 하지만 Form 내에 WebBrowser가 포함된 경우에는 print 메소드 호출 시 자바스크립트의 window.print 메소드를 실행합니다. window.print 메소드는 화면에 표시되는 영역만 인쇄합니다.
브라우저 | System.print 처리 방식 |
---|---|
[NRE] | WebBrowser 컴포넌트와 상관없이 Form 영역 모두 인쇄 |
Chrome, Edge, Firefox, IE, Safari | WebBrowser 컴포넌트가 포함된 경우에는 화면에 보이는 영역만 인쇄 |
아래 그림같은 경우 Form에 Edit 컴포넌트 2개가 위 아래로 배치되어 있고 오른쪽에 WebBrowser 컴포넌트가 배치되어 지도를 보여주고 있습니다. System.print 메소드 호출 시 NRE 환경에서는 빨간색 영역을 인쇄하지만 웹브라우저에서는 실행된 창에 보이는 파란색 영역을 인쇄합니다.
RP | 작성일 | 설명 |
---|---|---|
71680 | 2017-02-08 | 웹브라우저 기능 제약으로 Form에 WebBrowser 컴포넌트가 포함된 경우에 메소드 처리 방식이 NRE와 웹브라우저가 다르게 구현됐습니다. |
2017-06-15 | 이해를 돕기 위해 간단한 예제 이미지를 추가했습니다. |
자바스크립트 메소드 사용 시 제약
지시자를 지정하지 않고 alert, confirm 메소드를 호출하는 경우에는 자바스크립트의 메소드가 실행됩니다. 자바스크립트의 메소드는 넥사크로에서 제공하는 메소드와 동작 방식이 다를 수 있습니다.
this.Button00_onclick = function(obj:nexacro.Button, e:nexacro.ClickEventInfo) { alert("TEST"); // javascript alert method this.alert("TEST"); // Form object alert method nexacro.getApplication().alert("TEST"); // Application object alert method }
아래 그림과 같이 넥사크로에서 재정의한 메소드는 내부적으로 연계된 동작을 수행하기 위한 코드를 포함하고 있습니다. 그래서 자바스크립트의 기본 메소드와는 다른 형식으로 처리됩니다.
RP | 작성일 | 설명 |
---|---|---|
2017-05-22 | 넥사크로 스크립트와 자바스크립트 메소드의 이름이 같아 생길 수 있는 제약입니다. 개발 시에는 Form 또는 Application 오브젝트의 메소드를 사용하는 것을 권장합니다. |
HTTP 헤더 적용 시 일부 옵션 제약
보안정책에 따라 서버에서 HTTP 헤더를 설정하거나 HTML 문서에 meta 태그 적용 시 제품 내부 기능 상의 이유로 일부 옵션이 제약될 수 있습니다.
Content-Security-Policy
적용 시 옵션에 따라 일부 기능이 동작하지 않을 수 있습니다. 넥사크로 라이브러리 내부에서 eval 함수나 인라인 스크립트를 사용하고 있는데 해당 코드가 보안 정책과 충돌할 수 있습니다.
아래와 같이 eval 함수나 인라인 스크립트를 허용하는 옵션을 추가해 적용할 수 있습니다.
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
X-Frame-Options
DENY 옵션 적용 시 일부 기능이 동작하지 않을 수 있습니다. 넥사크로 컴포넌트 중 generate 시 IFRAME을 사용하는 컴포넌트(WebBrowser)과 기능(이미지 처리, 텍스트 사이즈 캐시)이 동작하지 못합니다.
아래와 같이 DENY 옵션을 사용하지 않으면 적용할 수 있습니다.
<meta http-equiv="X-Frame-Options" content="… " />
RP | 작성일 | 설명 |
---|---|---|
72928 | 2017-06-15 | 관련 옵션을 추가하거나 사용하지 않는 것으로 제약 사항을 회피할 수 있습니다. |
X-Content-Type-Options, X-XSS-Protection, Strict-Transport-Security 적용 시에는 제약이 없습니다.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security
XSS(Cross-site scripting) 취약점에 대해서는 화면에서 입력되는 텍스트에 대해 필터링을 하거나 서버에서 검증 후 입력하는 방식을 적용할 수 있습니다.
넥사크로 자체에서 모든 보안 취약점을 방어할 수는 없습니다. 서버에서 데이터를 전달받는 경우 올바른 데이터로 판단하고 처리하기 때문에 서버에서 데이터 생성 시 검증된 데이터를 생성해야 합니다.
onusernotify 이벤트 처리 시 브라우저에서 전달되는 값의 길이 제약
WebBrowser 컴포넌트에서 로딩된 웹문서에서 값을 전달받은 경우 onusernotify 이벤트를 사용하는데 이때 웹문서에서 전달된 값을 처리할 때 NRE의 경우 처리할 수 있는 값의 길이 제약이 있습니다.
처리할 수 있는 값의 길이는 최대 512문자(한글, 일본어 256자)입니다.
RP | 작성일 | 설명 |
---|---|---|
76512 | 2017-10-19 | [NRE]에서 웹브라우저(IE)의 title 속성을 사용해 값을 전달받고 있습니다. 해당 속성값 길이에 대한 제약이 있습니다. |
2018-08-08 | 해당 제약사항은 윈도우 운영체제에서만 발생합니다. macOS, iOS, Android 운영체제에서는 제약 없이 동작합니다. |
안드로이드 운영체제에서 Fullscreen 설정 시 키패드가 입력 컴포넌트를 가리는 현상
AndroidManifest.xml 파일 설정 시 아래와 같이 Fullscreen 관련 설정을 추가한 경우 입력 컴포넌트에 포커스를 옮겼을 때 키패드로 인해 입력 시 제약이 있을 수 있습니다.
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
RP | 작성일 | 설명 |
---|---|---|
77480 | 2017-12-13 | 안드로이드 운영체제에서 사용하는 넥사크로 앱은 FullScreen을 지원하지 않습니다. |
안드로이드 운영체제에서 컴포넌트가 최상위에 표시되는 현상
안드로이드 NRE에서는 일부 컴포넌트 위에 다른 컴포넌트를 배치할 수 없습니다. 팝업으로 표시되는 컴포넌트도 해당하는 컴포넌트와 겹쳐지는 경우 해당 컴포넌트 아래 표시됩니다.
대상 컴포넌트는 아래와 같습니다.
GoogleMap, WebBrowser
RP | 작성일 | 설명 |
---|---|---|
78897 | 2018-03-15 | 안드로이드 운영체제에서 WebBrowser 컴포넌트를 포함한 앱 실행 시 제약이 있습니다. |
89336 | 2020-04-23 | GoogleMap 컴포넌트에서 같은 제약을 확인하고 내용을 수정했습니다. |
fittocontents 속성 적용 시 텍스트 일부가 잘려 보이는 현상
Static 컴포넌트에서 usedecorate 속성값을 true로 설정하고 기울임(italic) 효과를 지정하거나 font 속성에서 기울임(italic) 속성값을 지정한 상태에서 fittocontents 속성값을 "width"로 지정하는 경우 텍스트 일부가 잘려 보이는 현상이 발생합니다. fittocontents 속성을 적용할 경우 문자열의 너비를 계산하는데 기울임 효과를 적용한 상태의 너비를 정확하게 계산할 수 없어서 발생하는 문제입니다.
RP | 작성일 | 설명 |
---|---|---|
80378 | 2018-07-13 | fittocontents 속성 적용 시 기울임 효과를 적용한 문자열의 너비를 계산할 수 있는 방법이 없어서 문자열 일부가 잘려 보이는 현상입니다. |
UTF-8 인코딩이 아닌 파일을 열었을 때 문자열이 깨져서 표시되는 현상
인코딩 형식이 UTF-8이 아닌 경우 문자열이 깨져서 표시됩니다. 예를 들어 EUC-KR 인코딩으로 저장된 파일을 넥사크로 스튜디오에서 열었을 때 한국어 문자열은 깨져서 표시됩니다.
넥사크로 스튜디오 내에서 생성하는 파일은 BOM(Byte Order Mark)이 붙지 않은 UTF-8 인코딩 형식의 파일로 생성합니다. BOM이 붙지 않는 파일은 에디터에서 파일을 열 때 인코딩 방식을 체크하게 되면 탐색 시간이 오래 걸리는 문제가 있습니다. 때문에 넥사크로 스튜디오에서는 인코딩 형식이 UTF-8이라고 가정하고 파일을 처리합니다.
RP | 작성일 | 설명 |
---|---|---|
80075 | 2018-12-14 | 제품 성능을 위해 파일 처리 기능을 제약합니다. |
WebBrowser 컴포넌트에서 다른 도메인 컨텐츠를 연결한 경우 mousemove 이벤트가 멈추는 현상
WebBrowser 컴포넌트의 url 속성값으로 현재 도메인과 다른 도메인 컨텐츠를 설정한 경우 창 크기를 변경하려 할 때, WebBrowser 컴포넌트 영역에서 mousemove 이벤트가 멈춥니다.
아래 그림에서 1번 위치에서 팝업창의 경계를 마우스 왼쪽 버튼을 클릭해서 드래그하면서 창 크기를 조정하려고 시도합니다. 하지만 WebBrowser 컴포넌트와 접하는 2번 위치에서 mousemove 이벤트가 멈추면서 크기를 조정할 수 없습니다.
RP | 작성일 | 설명 |
---|---|---|
83330 | 2019-01-15 | Cross Domain 환경일 경우 same-origin 정책으로 인해 IFRAME에서 발생하는 이벤트 핸들링이 되지 않는 제약입니다. |
system.osversion 속성값 처리 시 제약
system.osversion 속성값 처리 시 정확한 운영체제 이름을 반환하지 않습니다. 해당 속성값 처리 시 navigator.userAgent 문자열 값으로 확인하고 값을 반환하는데, 2개 이상의 운영체제가 같은 문자열을 반환하기 때문에 발생하는 제약입니다.
system.osversion 속성에서 반환하는 값은 아래와 같습니다.
윈도우 서버 제품의 경우 윈도우 업데이트나 버전에 따라 달라질 수 있습니다.
system.osversion | 대상 운영체제 |
---|---|
Windows Server 2003 / Windows XP 64-bit | Windows XP x64, Windows Server 2003 R2, Windows Home Server |
Windows Vista | Windows Vista, Windows Server 2008 |
Windows 7 | Windows 7, Windows Server 2008 R2, Windows Home Server 2011 |
Windows 8 | Windows 8, Windows Server 2012 |
Windows 8.1 | Windows 8.1, Windows Server 2012 R2 |
Windows 10 | Windows 10, Windows Server 2016, Windows Server 2019 |
RP | 작성일 | 설명 |
---|---|---|
83650 | 2019-02-08 | navigator.userAgent 정보에서 윈도우 서버 제품 여부를 확인할 수 없어서 발생하는 제약입니다. |
ColumnInfo 오브젝트의 type 속성값을 변경한 후 변경된 type에 해당하는 값을 설정하지 못하는 제약
Dataset 오브젝트 생성 후 ColumnInfo 오브젝트의 type 속성값을 변경하고 변경된 type에 해당하는 값을 설정하려 하면 값이 설정되지 않습니다. Dataset 오브젝트 생성 시 내부적으로 ColumnInfo 오브젝트의 type 속성값에 해당하는 변환 함수를 연결해놓는데, type 속성값 변경 시 연결된 변환 함수가 바뀌지 않아 발생하는 현상입니다.
예를 들어 아래와 같은 오류가 발생할 수 있습니다. 원래 ColumnInfo 오브젝트의 type 속성값이 "BIGDECIMAL"인 경우 아래와 같이 스크립트를 작성하고 실행하면 type 속성값이 "STRING"으로 바뀌고 "234%"라는 값이 설정되어야 하지만 변환 함수에서 "BIGDECIMAL" 규칙에 따라 처리하면서 타입이 맞지 않기 때문에 빈값을 설정하게 됩니다.
var colInfo = this.Dataset00.getColumnInfo(0); colInfo.set_type("STRING"); this.Dataset00.setColumn(2, 0, "234%");
해당 오류는 Dataset 오브젝트의 다른 기능에 영향도를 가지고 있어서 검토 후 수정될 예정입니다. 해당 오류가 수정되기 전까지 제약 사항으로 처리합니다.
RP | 작성일 | 설명 |
---|---|---|
83193 | 2019-02-14 | 운영 중인 기능에 다른 영향을 미칠 수 있어 검토 전까지 수정을 보류하고 제약 사항으로 처리합니다. |
스타일 편집기 컴포넌트 프리뷰 창에서 Status에 따른 상태가 변경되지 않는 현상
넥사크로 스튜디오에서 테마 또는 XCSS 파일 편집 시 스타일 편집기에서 선택자를 선택하면 컴포넌트 프리뷰 창에 선택자의 Status에 따라 미리보기를 제공합니다. Calendar, Grid 컴포넌트처럼 하위 컨트롤을 가지고 있으면서 프레임워크 내부적으로 접근 방식을 결정하는 일부 컴포넌트는 Status에 따른 미리보기가 정확하게 지원되지 않습니다.
실행에는 문제가 없으나 해당 기능을 지원하기 위해서 프레임워크 구조를 변경해야 하는 문제가 있어, 오류를 수정하지 않고 현재의 상태를 유지하고 있습니다.
아래 그림과 같이 스타일 편집기에서는 disabled 상태의 미리보기를 제공하지 않지만, 화면 디자인 상태에서 enable 속성값을 false로 지정한 경우에는 정상적으로 미리보기를 지원합니다.
RP | 작성일 | 설명 |
---|---|---|
85014 | 2019-06-05 | 해당 오류는 수정되어야 하지만 프레임워크 구조에 영향을 미칠 수 있어 오류를 수정하지 않고 현재의 상태를 유지하고 있습니다. |
LiteDBConnection 오브젝트에서 사용할 DB 파일을 배포하지 못하는 제약
iOS 운영체제 앱 배포 시 Update Type을 "Server"로 설정한 경우 LiteDBConnection 오브젝트에서 사용할 DB 파일을 직접 배포할 수 없습니다. iOS 운영체제의 권한 처리에 대한 제약이며 LiteDBConnection 오브젝트를 사용해야 하는 경우 아래와 같이 스크립트로 DB 파일을 직접 생성해서 사용할 수 있습니다.
/** * open 메소드 실행 시 LiteDBConnection.openReadWriteCreate 옵션을 설정합니다. */ this.Button00_onclick = function(obj:Button, e:nexacro.ClickEventInfo) { this.LiteDBConnection00.open("%USERAPP%t.s3db", LiteDBConnection.openReadWriteCreate); } /** * DB 파일을 생성하고 연결된 상태에서 데이터 테이블을 생성하고 필요한 작업을 처리합니다. */ var CREATE_QUERY = "CREATE TABLE Persons ()"; this.LiteDBConnection00_onsuccess = function(obj:nexacro.LiteDBConnection,e:nexacro.LiteDBEventInfo) { switch(e.reason) { case 5: // LiteDBConnection open() this.LiteDBStatement00.set_ldbconnection(this.LiteDBConnection00); this.LiteDBStatement00.executeUpdate(CREATE_QUERY); break; } }
RP | 작성일 | 설명 |
---|---|---|
90369 | 2020-10-08 | 앱 배포 방식에 따른 제약사항입니다. DB 파일을 직접 배포하지 않고 특정 시점에 DB 파일을 생성해 접근하는 방식으로 제약사항을 회피할 수 있습니다. |
이름 앞부분이 같은 글꼴 사용 시 적용되지 않는 현상
글꼴 이름 앞부분이 같은 경우 동시에 사용할 때 발생하는 현상입니다.
윈도우 NRE에서 처음 생성되는 컴포넌트에 적용한 글꼴 이름에 이후 생성되는 컴포넌트에 적용한 글꼴 이름이 아래와 같이 포함된 경우 나중에 생성된 컴포넌트에 처음 생성된 컴포넌트 글꼴이 반영되는 제약이 발생합니다.
Black
예를 들어 첫 번째 Static 컴포넌트의 글꼴이 "Arial Black"이고 두 번째 Button 컴포넌트의 글꼴이 "Arial"인 경우 아래와 같이 표시됩니다. 웹브라우저에서는 "Arial Black"와 "Arial"이 구분되어 처리되는데 윈도우 NRE에서는 "Arial Black"로만 처리됩니다.
Form이 로딩되는 순서에 영향을 받는 제약 사항입니다.
넥사크로 스튜디오 디자인 창에서는 작성 시에는 실행 환경에 따라 정상적으로 글꼴이 반영되는 것처럼 보일 수 있으나 넥사크로 스튜디오 종료 후 해당 Form을 최초로 불러오면 윈도우 NRE와 같은 제약 사항이 발생합니다.
NRE 앱 실행 시에도 제약이 발생하는 Form이 호출되는 순서에 따라 해당 제약이 발생하지 않을 수 있습니다.
RP | 작성일 | 설명 |
---|---|---|
91383 | 2021-02-02 | 운영하고 있는 기능에 영향을 미칠 수 있어 수정을 보류하고 제약 사항으로 처리합니다. |
HTML body 태그 내 contenteditable 속성값이 true인 경우 스크롤 동작 제약
WebBrowser 컴포넌트에서 로딩한 HTML 콘텐츠의 body 태그 내에 contenteditable 속성이 포함되어 있고 속성값이 true인 경우 키패드가 올라온 상태에서 스크롤이 동작하지 않습니다.
<html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> </head> <body contenteditable="true">
같은 콘텐츠를 웹 브라우저에서 실행하면 문제가 없으며 안드로이드 운영체제 NRE에서 실행하는 경우에만 스크롤 동작에 제약이 발생합니다.
넥사크로 NRE의 구조적인 문제로 발생하는 제약입니다.
RP | 작성일 | 설명 |
---|---|---|
91925 | 2021-04-13 | 안드로이드 운영체제 NRE 실행 시 발생하는 제약입니다. 해당 오류는 수정되어야 하지만 프레임워크 구조에 영향을 미칠 수 있어 오류를 수정하지 않고 현재의 상태를 유지하고 있습니다. |
넥사크로 스튜디오에서 이모지 문자 출력 제약
넥사크로 스튜디오 내 편집창, 속성창, Output 창 등에서 이모지 문자 사용 시 일부 문자가 깨져서 표시됩니다. 해당 현상은 윈도우 운영체제 기반 프로그램 제약이며 윈도우 기본 도구인 메모장에서도 같은 현상이 있습니다.
윈도우 메모장
넥사크로 스튜디오 > 속성창, 편집창
앱 실행 시에는 정상적으로 표시됩니다. 화면에 표시되는 형식은 운영체제, 브라우저, 실행기기 등에 따라 달라질 수 있으며 일부 문자는 표시되지 않을 수 있습니다.
WRE
RP | 작성일 | 설명 |
---|---|---|
92450 | 2021-06-17 | 윈도우 운영체제 기반 프로그램 제약입니다. |
NRE 실행 시 이모지 문자 출력 제약
NRE 실행 시 아래와 같은 경우 이모지 문자와 다른 문자가 겹쳐져 출력됩니다.
Windows NRE
Family 이모지 문자 중 자녀 이미지(girl, boy, baby)가 바깥쪽에 배치되는 이모지 문자를 다른 문자와 같이 쓰는 경우 겹쳐져 표시됩니다.
macOS NRE
모든 이모지 문자를 다른 문자와 같이 쓰는 경우 겹쳐져 표시됩니다.
RP | 작성일 | 설명 |
---|---|---|
92429 92428 92425 | 2021-06-29 | Windows, macOS NRE에서 사용하고 있는 Skia(오픈소스 그래픽 라이브러리인) 버전이 이모지 처리 표준을 반영하지 못해 발생하는 현상입니다. |
상태바 영역을 두 번 탭할 때 최상단으로 한 번에 스크롤되지 않는 현상
iOS 운영체제는 상태바 영역을 두 번 탭하면 최상단으로 한 번에 스크롤되는 기능을 지원하고 있습니다. 하지만 사파리 브라우저에서 넥사크로플랫폼 WRE 실행 시에는 아래와 같은 이유로 해당 기능을 지원하지 않습니다.
상태바 영역에서 탭 이벤트 발생 시 이에 대한 정보를 네이티브앱이 아닌 HTML 환경에서는 확인할 수 없습니다.
넥사크로플랫폼은 안정적인 동작을 위해 Form이나 컨테이너 컴포넌트에서 자체 구현된 스크롤 기능을 사용합니다.
RP | 작성일 | 설명 |
---|---|---|
93942 | 2022-02-10 | 운영하고 있는 기능에 영향을 미칠 수 있어 수정을 보류하고 제약 사항으로 처리합니다. |
이벤트 핸들러 함수 내에서 alert, confirm 메소드 실행 시 동작이 달라지는 제약
Grid 컴포넌트의 selectchangetype 속성은 속성값에 따라 마우스 클릭 시 이벤트 발생 순서가 달라집니다. selectchangetype 속성값이 'down'인 경우 마우스 클릭 시 Grid 컴포넌트의 onlbuttondown 이벤트부터 시작해서 아래와 같은 순서로 이벤트가 발생합니다.
(1) Grid.onlbuttondown
(2) Dataset.canrowposchange
(3) Dataset.onrowposchanged
(4) Grid.oncellposchanged
(5) Grid.onselectchanged
(6) Grid.onlbuttonup
(7) Grid.oncellclick
위의 이벤트 목록에서 첫 번째(onlbuttondown)부터 다섯 번째(onselectchanged) 이벤트 핸들러 함수 내 alert, confirm 메소드를 실행하는 경우 창을 닫기 위해 사용자가 열린 창을 클릭하거나 Enter 키를 입력하는 동작이 추가로 발생하며 이벤트 발생 순서에 영향을 미칩니다.
alert, confirm 메소드 실행이 필요한 경우에는 selectchangetype 속성값을 'up'으로 설정해 이벤트 발생 순서를 변경할 수 있습니다. selectchangetype 속성값 변경 시 다른 작업에 영향을 미칠 수 있으니 신중하게 검토하고 반영해주세요.
RP | 작성일 | 설명 |
---|---|---|
95162 | 2022-08-30 | 내부적으로 처리되어야 할 이벤트 중간에 사용자 동작이 발생하며 이벤트 발생 순서에 영향을 미치는 제약입니다. |
Dataset 오브젝트의 getSum 메서드 실행 시 데이터 정렬 방식에 따라 값이 다르게 나오는 현상
Dataset 오브젝트에서 keystring 메서드를 실행해 데이터를 정렬하고 getSum 메서드 실행 시 정렬 전과 데이터가 다르게 나오는 경우가 있습니다. 칼럼 Type이 "STRING"이고 데이터 중 소수점 이하 값이 포함된 경우에 발생합니다.
이런 현상은 JavaScript에서 부동 소수점 연산은 정확한 결과를 보장하지 않을 수 있기 때문입니다. IEEE 754 표준에 따라 이진 부동 소수점 형식으로 수를 표현하기 때문에 정렬 방식(연산 순서)에 따라 합계값이 다르게 처리될 수 있습니다. 아래 예와 같이 같은 숫자를 연산하더라도 연산 순서에 따라 결괏값이 달라집니다.
var a = nexacro.toNumber("0.1"); var b = nexacro.toNumber("0.2"); var c = nexacro.toNumber("0.3"); trace(a + b + c); // 0.6000000000000001 trace(c + b + a); // 0.6
이를 보완하기 위해서는 칼럼 Type을 "STRING" 대신 "BIGDECIMAL"로 설정하거나 toFixed 메서드를 사용해 소수점 이하 자릿수를 제한할 수 있습니다.
var a = nexacro.toNumber("0.1"); var b = nexacro.toNumber("0.2"); var c = nexacro.toNumber("0.3"); trace((a + b + c).toFixed(1)); // 0.6 trace((c + b + a).toFixed(1)); // 0.6
754-2019 - IEEE Standard for Floating-Point Arithmetic
RP | 작성일 | 설명 |
---|---|---|
97121 | 2023-06-15 | 자바스크립트 부동 소수점 연산이 정확한 결과를 보장하지 않기 때문에 발생한 현상입니다. |
Const Column value에 type이 맞지 않는 값이 설정되는 현상
Dataset 오브젝트의 Column 값은 type에 따라 유효성을 체크합니다. Column type이 "INT"인 경우 문자열 값을 설정하면 유효하지 않은 값으로 처리합니다.
trace(this.Dataset01.setColumn(0, 0, "TEST")); // false
숫자 값을 문자열로 설정하는 경우에는 라이브러리 내부에서 숫자로 변환해 유효한 값으로 처리합니다.
trace(this.Dataset01.setColumn(0, 0, "15")); // true
하지만 Const Column은 type에 따라 유효성을 체크하지 않습니다. Const Column type이 "INT"인 경우 문자열 값을 설정하면 유효성 체크 없이 값이 설정됩니다.
trace(this.Dataset01.setConstColumn(0, "TEST")); // true
넥사크로 스튜디오 Dataset 에디터에서 직접 설정하는 경우에도 마찬가지입니다. type이 "INT"인 Const Column과 Column에 각각 문자열 값을 입력하고 애플리케이션을 실행하면 Const Column은 문자열 값을 그대로 처리하지만 Column에서는 유효하지 않은 값이기 때문에 넥사크로 스튜디오에서 입력한 값을 무효 처리합니다.
Environment.datatyperule 속성값과 무관하게 Const Column의 value 유효성 체크를 하지 않습니다.
Grid 컴포넌트에 바인딩된 경우 type과 맞지 않은 값으로 변경된 Const Column value가 보이지 않거나 "invalid value"로 표시될 수 있습니다. Grid 컴포넌트의 Cell 오브젝트 displaytype 속성값에 따라 처리되는 현상이며 Const Column의 value 유효성 체크와 관계없이 동작합니다.
예를 들어 Cell 오브젝트의 displaytype 속성값이 "normal"으로 설정되는데 Const Column type이 "INT"이기 때문에 "number"형식으로 동작하고 유효성 체크 없이 입력된 문자열("TEST")은 표시되지 않습니다. displaytype 속성값을 "text"로 변경하면 값이 표시됩니다.
RP | 작성일 | 설명 |
---|---|---|
97217 | 2023-07-13 | 해당 오류는 수정되어야 하지만 기존 사용자 애플리케이션과 데이터에 영향을 미칠 수 있어 오류를 수정하지 않고 현재의 상태를 유지합니다. |
98955 | 2024-01-22 | setColumn 메서드 동작에 대한 설명을 보완했습니다. |
센스리더 가상커서 사용 설정 시 제약
21.0.0.1200 이후 버전부터 센스리더에서 가상커서를 사용으로 설정한 경우 동작을 지원합니다. 일부 동작은 가상커서 사용 유무에 따라 기본 접근성 설정 시와 다르게 동작하는 부분이 있어 이를 제약사항으로 정리했습니다.
제품 | 지원 대상 버전 / 환경 |
---|---|
넥사크로플랫폼 | 21.0.0.1200 이상
|
센스리더 | 8.0 이상
|
Environment 속성 미지원/일부 지원
센스리더에서 제공하는 기능과 중복되는 속성이거나 센스리더 기능 제약으로 미지원되는 속성입니다.
센스리더에서 브라우저 탭키 사용으로 설정한 경우(기본 설정)와 가상커서 탭키 사용으로 설정한 경우 센스리더에서 제공하는 단축키가 달라집니다. 아래 표를 참고하세요.
속성 | 지원 범위 | 미지원 사유 / 센스리더 제공 기능 | ||
---|---|---|---|---|
대상 | 브라우저 탭키 | 가상커서 탭키 | ||
tabkeycirculation | 일부 지원 - 속성값을 'form,cycle' 또는 'frame, cycle'으로 설정한 경우 상하방향키로 선택상자 이동을 할 수 없습니다. | 센스리더 기능 제약 | ||
accessibilityforwardkey | 미지원 | 센스리더 제공 기능 | ||
기본 | N | Ctrl + F2 | ||
ListBox | S | Ctrl + I | ||
Edit 계열 | F2 | Ctrl + F8 | ||
accessibilitybackwardkey | 미지원 | 센스리더 제공 기능 | ||
기본 | Shift + N | Ctrl + Shift + F2 | ||
ListBox | Shift + S | Ctrl + Shift + I | ||
Edit 계열 | Shift + F2 | Ctrl + Shift + F8 | ||
accessibilityheadingnexthotkey | 미지원 | 센스리더 제공 기능 | ||
기본 | H | Ctrl + F6 | ||
accessibilityheadingprevhotkey | 미지원 | 센스리더 제공 기능 | ||
기본 | Shift + H | Ctrl + Shift + F6 | ||
accessibilityhistorycount | 미지원 | 센스리더 기능 제약 | ||
accessibilityreplayhotkey | 미지원 | 센스리더 기능 제약 | ||
accessibilitywholereadhotkey | 미지원 | 센스리더 제공 기능 | ||
기본 | F11 | F11 | ||
accessibilitywholereadtype | 미지원 | 센스리더 기능 제약 |
컴포넌트 속성 미지원/일부 지원
컴포넌트/오브젝트 | 속성 | 지원 범위 | 사유 / 센스리더 제공 기능 |
---|---|---|---|
GridBandControl | accessibilityenable | 항상 false로 동작 | 운영하고 있는 기능에 영향을 미칠 수 있어 수정을 보류하고 제약 사항으로 처리 |
테이블 모드 지원
센스리더에서 테이블 모드 선택 시 테이블 모드 기능을 지원하기 위한 동작을 설명합니다.
사용 제약
GridCellControl, CellSubCellControl 오브젝트의 accessibilityrole 속성값은 "gridcell"로 적용됩니다.
accessibilityrole 속성값을 변경해도 다른 값으로 적용되지 않습니다.
displaytype, edittype 속성값에 영향을 받지 않습니다.
구글 크롬 브라우저 사용 시에만 동작을 보장합니다.
Cell 이동 후 편집 모드에서 가상커서를 임시 해제하고 편집 완료 후 가상커서를 재활성해야 합니다.
가상커서 임시 해제(Ctrl + 아래 방향키), 가상커서 재활성(Esc)
테이블 모드 단축키
Grid 컴포넌트에서 편집 기능을 지원하는 경우에는 단축키를 사용하도록 가이드합니다.
테이블 모드 단축키는 Band에 영향을 받지 않고 이동합니다.
Action | Key |
---|---|
페이지나 Grid 컴포넌트 순환 | T or Shift + T |
Cell 이동 | Ctrl + Alt + 방향키 (모든 방향) |
현재 선택된 Cell의 Row에서 첫 번째 Column으로 이동 | Ctrl + Alt + Home |
현재 선택된 Cell의 Row에서 마지막 Column으로 이동 | Ctrl + Alt + End |
현재 선택된 Cell의 Column에서 첫 번째 Row로 이동 | Ctrl + Alt + PageUp |
현재 선택된 Cell의 Column에서 마지막 Row로 이동 | Ctrl + Alt + PageDown |
Accessibility Key Action 제약
컴포넌트/오브젝트의 Accessibility Key Action 기능을 지원하지 않거나 기본 접근성 설정 시 동작과 다른 기능을 설명합니다.
컴포넌트/오브젝트 | Action/Key | 지원 범위 | 사유 / 센스리더 제공 기능 |
---|---|---|---|
Radio | 아이템 선택이동/좌우방향키 | 미지원 - RadioItem 선택 시 읽지 않음 | 센스리더에서 좌우방향키 입력 시 문자열 이동으로 처리 |
Button FileDownload ImageViewer | Click/Enter | 일부 지원 - Enter 키 입력 시 onkeydown, onkeyup 이벤트 발생하지 않음 - onclick 이벤트 발생 시 ClickEventInfo 오브젝트의 button 속성값이 'none'이 아닌 'lbutton'으로 처리 | 센스리더에서 Enter 키 입력 시 마우스 액션으로 처리 |
TextArea | 일부 지원 - Enter 키 입력 시 가상커서가 해제되고 텍스트 입력 대기 상태로 전환 | 센스리더 기능 제약 | |
Grid | Cell 선택이동/방향키 | 일부 지원 - 좌우방향키 입력 시 Cell 선택 이동, 트리 확장/축소 기능 지원하지 않음 - 상하방향키로 Cell 선택 이동 시 oncellposchanged > onselectchanged > onkeydown 순으로 이벤트 발생 | 센스리더에서 좌우방향키 입력 시 문자열 이동으로 처리 센스리더에서 상하방향키 입력 시 keydown 이벤트 처리하지 않음 |
Cell 선택이동/Shift + 방향키 | 미지원 | 센스리더 기능 제약 | |
Cell 활성화/Enter | 일부 지원 - Enter 키 입력 시 onkeydown, onkeyup 이벤트 발생하지 않고 onenterdown 이벤트만 발생 | 센스리더 기능 제약 | |
Combo ComboControl | 아이템 이동/Ctrl + 상하방향키 | 일부 지원 - ComboList가 펼쳐진 상태에서 최초 Ctrl+상하방향키 입력 시 가상커서가 해제되고 아이템 이동 대기 상태로 전환. 이후 Ctrl+상하방향키 입력으로 아이템 이동 | 센스리더 기능 제약 |
ComboList 닫기/ESC | 일부 지원 - ComboList가 펼쳐진 상태에서 ESC 키 입력 시 가상커서 사용으로 설정되고 두 번째 ESC 키 입력 시 ComboList 닫기 동작 | 센스리더 기능 제약 | |
스크롤 이동 지원 컴포넌트 | 스크롤 이동/Ctrl + 방향키 | 일부 지원 - 컴포넌트 포커스 상태에서 최초 Ctrl+상하방향키 입력 시 가상커서가 해제되고 스크롤 이동 대기 상태로 전환. 이후 Ctrl+상하방향키 입력으로 스크롤 이동 (가상커서 사용으로 설정하고자 할 경우에는 ESC 키 입력) - HScrollBarControl의 경우 가상커서 해제 동작 없이 Ctrl+좌우방향키 입력으로 스크롤 이동 | 센스리더 기능 제약 |
Spin | 값 변경/Ctrl + 상하방향키 | 일부 지원 - 포커스 상태에서 Ctrl+상하방향키 입력 시 가상커서가 해제되고 값 변경 대기 상태로 전환. 이후 Ctrl+상하방향키 입력으로 값 변경 (가상커서 사용으로 설정하고자 할 경우에는 ESC 키 입력) | 센스리더 기능 제약 |
Calendar CalendarControl | DatePicker 닫기/ESC | 일부 지원 - DatePicker가 펼쳐진 상태에서 ESC 키 입력 시 가상커서 사용으로 설정되고 두 번째 ESC 키 입력 시 DatePicker 닫기 동작 | 센스리더 기능 제약 |
개발 시 주의 사항
가상커서 상태 정보 미지원
Action/Key에 따라 특정키 입력 시 가상커서가 일시적으로 해제되거나 사용으로 설정될 수 있습니다.
가상커서 해제 상태에서 Tab키를 입력해 다음 컴포넌트로 포커스가 이동하면 자동으로 가상커서 사용으로 설정됩니다.
개발자가 특정 시점의 가상커서 상태를 확인할 수 있는 속성이나 메소드를 지원하지 않습니다.
선택 상자 이동 순서
Form 내에서 taborder 속성값이 0인 컴포넌트 노드부터 순서대로 이동합니다.
화면 내 taborder와 Z-Order 순서가 같지 않을 경우 잘못된 순서로 이동할 수 있습니다.
탭 순서에 따라 Z-Order를 변경하고자 할 경우에는 메뉴[Design > Arrange to Tab Order] 항목을 선택해서 Z-Order를 변경할 수 있습니다.
포커스 불일치
포커스 이동 시 센스리더가 keydown 이벤트를 먼저 처리합니다.
onkeydown 이벤트와 연결된 이벤트(onkeydown, onitemchanged 등) 핸들러 함수 내에서 스크립트로 포커스를 변경하는 경우 애플리케이션과 센스리더 가상커서의 포커스가 달라질 수 있으며 원하지 않는 동작이 발생할 수 있습니다.
Grid 컴포넌트 편집 기능 사용 시 가상커서 해제 권장
Grid 컴포넌트 내 Cell 이동 및 편집 기능은 가상커서가 해제된 상태에서 모든 기능을 사용할 수 있습니다. 테이블 모드 지원 참조.
단순 조회 시에는 가상커서 사용으로 설정된 상태에서도 사용할 수 있습니다.
방향키로 포커스 이동이 불가능한 경우에는 탭키를 사용할 수 있습니다.
센스리더 알려진 버그
컴포넌트/오브젝트 | 속성 | 버그 |
---|---|---|
Edit Combo Calendar TextArea GroupBox ProgressBar | accessibilitylabel accessibilitydescription | 상하방향키로 선택상자 이동 시 설정된 속성값을 읽지 못함 |
RP | 작성일 | 설명 |
---|---|---|
95502 | 2022-10-25 | 센스리더 가상커서 사용 설정 시 제약 항목을 추가했습니다. |
95537 | 2022-11-24 | 테이블 모드 지원 항목을 추가했습니다. |