使用環境による機能制約
MaskEditコンポーネントへフォーカスが移動した際に、キャレット位置が変わる事象
iOS端末では、MaskEditコンポーネントのtypeプロパティ値が「string」である場合、フォーカスが移動した際にキャレット位置が末尾に移動する事象が発生します。
RP | 作成日 | 説明 |
---|---|---|
69265 | 2016-09-13 | iOS端末では、コンポーネントの編集領域へフォーカスが移動した場合にソフトウェアキーボードを表示するコマンドを呼び出します。その際に、内部的にはINPUT DOMツリーのtypeを変更し、textの値を再設定しますが、その過程でキャレットが末尾に移動する事象が発生します。強制的にキャレットの位置を変更することは可能ですが、パフォーマンスに影響を与える可能性があるため、現状のままにしています。 |
「拡張保護モード」オプションが有効な場合、ファイルのダウンロード機能の制約
IE10以上のブラウザでは、[拡張保護モード]オプションを有効にした場合、Windowsフォルダを保護するために、特定のフォルダにのみアクセスできるようにパスが仮想化されます。ユーザーが該当のオプションを有効にした場合、ファイルをダウンロードするフォルダのパスを指定する機能が使用できません。
RP | 作成日 | 説明 |
---|---|---|
71778 | 2017-02-13 | [拡張保護モード]は、IE10以上のブラウザの使用時にユーザーが設定するオプションです。必要に応じて、ユーザーがオプションを変更するようにガイドすることで回避できます。 |
FileUploadコンポーネントのappendItemメソッドが動作しない事象
Windows版Safariで、FileUploadコンポーネントのappendItemメソッドを繰り返し呼び出す場合、2回目以降は正常に動作しません。
RP | 作成日 | 説明 |
---|---|---|
72002 | 2017-02-28 | Windows版Safariのバグです。 |
Edit領域を持つコンポーネントのテキスト検索に関する制約
IEでは、ブラウザの検索機能を使用し、Edit領域を持つコンポーネントに入力されたテキストを検索することができません。
RP | 作成日 | 説明 |
---|---|---|
72123 | 2017-03-09 | IEの機能制約です。 |
WebBrowserコンポーネントの生成と削除の繰り返しによるOSのメモリ増加
Windows端末用のNREにて、WebBrowserコンポーネントの生成と削除が頻繁に発生した場合、OSのメモリ使用量が増加し、パフォーマンス低下が発生します。
例えば、Divコンポーネントのurlプロパティに指定したFormオブジェクト内にWebBrowserコンポーネントが配置された場合、Divコンポーネントのurlプロパティ値を変更するたびに、内部的にはWebBrowserコンポーネントの生成と削除が繰り返され、メモリ使用量が増加することになります。
RP | 作成日 | 説明 |
---|---|---|
74036 | 2017-7-5 | NREで実行した際のWebBrowserコンポーネントは、WebBrowser2 OLEコントロールを組み込んだ機能を使用しますが、WebBrowser2 OLEコントロールの特性上、作成と削除が繰り返された場合にメモリが増加するとの内容で、メーカー側(Microsoft)が公式に回答しています。 一度生成したWebBrowserコンポーネントを再利用することを推奨します。 |
マウスカーソルを高速で動かすと、Divコンポーネントのonmouseoutイベントが発生しない事象
UIコンポーネントを配置し、onmouseoutイベントを設定したDivコンポーネントにて、マウスカーソルをDivコンポーネント上を通り過ぎて外側へ移動した際にonmouseoutイベントが発生しますが、高速で移動した場合はイベントが正常に発生しません。
下図の例でマウスの移動範囲はDiv(青色)の外側からDiv内のButton(赤色)の上を通り過ぎてDivの外側までになっています。その際にマウスを高速で動かすと、onmouseoutイベントが正常に発生しない場合があります。
下記は生成されたHTMLコードを簡略化したものです。本事象は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 | Webブラウザでマウスカーソルを高速で動かした場合、希に発生します。 |
アクセシビリティ設定時のソフトウェアキーボード使用に関する制約
iOSでアクセシビリティ設定が有効になっているアプリの実行時に、テキスト編集領域を持つコンポーネントのinputtypeプロパティ値が「number」である場合にテンキーではない通常のキーボードが表示されるように設定されています。iOSではアクセシビリティ設定が有効になっている場合にテンキーが表示されると、画面の上部にスクロールする事象が発生するため、通常のキーボードを表示するように処理しています。
RP | 作成日 | 説明 |
---|---|---|
78855 | 2018-03-19 | iOSでアクセシビリティ設定が有効になっている場合、テンキー処理時に発生する不具合を回避するため、通常のキーボードを表示するようにしています。 |
ActiveXフィルター機能を有効にしている場合のスクリプトエラー
IE10以上のWebブラウザで、ActiveXフィルター機能を有効にしている場合はActiveXObject機能を使用することができず、スクリプトエラーが発生することがあります。
RP | 作成日 | 説明 |
---|---|---|
73214 | 2017-04-28 | IE10以上のWebブラウザで、ActiveXフィルター機能を有効にしている場合に発生する事象です。ActiveXフィルター機能を無効にした状態で使用するようにガイドすることで回避できます。 |
iOSでUpdate TypeによるCookie使用に関する制約
iOS用アプリの配布時のUpdate Typeを「Update」もしくは「Local」に設定していた場合、デバイスのローカルパスにインストールされたコンテンツ(Run.html)のCookie使用に制約がある場合があります。Cookieを使用する必要がある場合には、Update Typeを「Server」に設定したうえで、コンテンツを管理するサーバーのドメインとトランザクションのリクエスト先のサーバーのドメインを同様に設定してください。
コンテンツ(Run.html)ファイルがローカルパス(file://)で動作する場合には、全てののCookieが許可されず、Cookieを設定することができません。スクリプトでのアクセス(document.cookie)もしくはWKWebView API(WKHTTPCookieStore)によるCookieの設定も許可されません。
RP | 作成日 | 説明 |
---|---|---|
- | 2018-07-30 | iOS端末のNREで、WKWebViewによりCookieへのアクセスが制限されて発生する事象です。 |
nexacroのWindows端末用のアプリのインストーラが起動時のエラーになる問題
nexacroのWindows端末用のアプリのインストーラ(nexacroN_SetupRuntime_xXX.exe)を実行した際に、api-ms-win-crt-runtime-l1-1-0.dll関連エラーが発生し、インストールできないことがあります。Windowsの最新アップデートがインストールされていない場合に発生する事象であり、Windowsを最新状態にしている場合は該当のエラーが発生しません。
たとえば、Windows 7 SP1までアップデート後、追加アップデートを行っていない場合に発生することがあります。Windowsアップデートを実行するか、もしくは該当エラーが解決可能なパッケージをダウンロードしてインストールすることができます。詳細については、下記のリンクを参照してください。
Windowsでの汎用 C ランタイム (CRT)に関するアップデート
https://support.microsoft.com/ja-jp/help/2999226/update-for-universal-c-runtime-in-windows
RP | 作成日 | 説明 |
---|---|---|
81751 | 2018-09-05 | 最新のWindowsアップデートプログラムがインストールされていない場合に発生するエラーです。 |
iPadにて、Screenオブジェクトのtypeプロパティ値の処理に関する制約
アプリの実行時に端末とOSの特性に応じて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 | デバイスから関連情報が提供されないため、Screenオブジェクトのtypeプロパティを強制的に設定している制約事項です。 |
WebBrowserコンポーネントのurlプロパティによるLocal-Urlへのアクセス時の制約
iOSのWKWebViewはLocal-Url(File://)形式でのファイルへのアクセスを制限しています。このような制約で、HTMLファイルを配布してWebBrowserコンポーネントからアクセスする機能は使用できません。
該当の機能を使用するには、PackingでUpdate Typeを「Server」に指定して、サーバー上のHTMLファイルにアクセスする必要があります。Update Typeを「Update」や「Local」に指定した場合には、WebBrowserコンポーネントのcallMethodメソッドによりHTMLファイルにアクセスする機能を使用することができません。
RP | 作成日 | 説明 |
---|---|---|
80584 | 2019-03-26 | iOS端末のNREで使用するWKWebViewの制約事項です。 |
Gridコンポーネントのサイズ変更時に残像が表示される事象
画面内に複雑な構造でコンポーネントが配置されていて、Gridコンポーネントを配置している場合は、画面のサイズを変更した際に残像が表示される事象が発生することがあります。ハードウェアのスペックが低いクライアント端末のIEで発生する事象です。
HTML内ノートの数が多くて、表形式を表現するためにCSSコード内でテーブルモデルを使用する場合、画面のサイズを変更する際に内部的に演算処理が発生します。この過程で、ハードウェアのスペックによっては、残像が表示されることがあります。
CSS table model
RP | 作成日 | 説明 |
---|---|---|
85839 | 2019-06-27 | 本事象はWindows 7のIE10で発見されました。 ハードウェアのスペックによって、演算処理中に発生する事象であるため、他の条件でも発生する可能性があります。 |
テキストの右揃えとイタリックを適用した際にテキストが見切れる事象
テキストを表示するコンポーネントにて、-nexa-text-alignプロパティを「right」に設定し、fontプロパティのfont-style値を「italic」に設定した場合、font-familyプロパティ値やfont-sizeプロパティ値によって右側の文字が見切れる事象が発生することがあります。
RP | 作成日 | 説明 |
---|---|---|
88094 | 2020-02-03 | イタリック適用時に文字がコンポーネント領域から外れて表示されることで発生する事象です。NRE、Webブラウザの両方で発生します。 |
システムカレンダーによって、日付変更時の確定時点が異なる事象
Calendarコンポーネントのpopuptypeプロパティを「system」に設定している場合、モバイルデバイスでは日付変更時の確定時点が異なる事象が発生します。各OSの仕様によるものであり、該当の制約を考慮した上で値を処理する必要があります。
OS | 処理方法 |
---|---|
Android | 日付変更後に確認ボタンを選択すると、イベントが発生します。 |
iOS, iPadOS | 日付選択ののドラムロール操作を止めた時点でイベントが発生します。 |
RP | 作成日 | 説明 |
---|---|---|
88892 | 2020-03-02 | 各OSの仕様による制約事項です。 |
imemodeプロパティ値が適用されない事象
Windows 8以降のバージョンでは、IME適用方式の変更によりアプリケーションごとに異なる入力方式が設定され、アプリケーション間のフォーカス移動時にimemodeプロパティの設定値が適用されません。
例えば、nexacroアプリケーションの実行中にメモ帳に切り替えてから、再度nexacroアプリケーションに戻った際に、最初のフォーカスを持つコンポーネントのimemodeプロパティ値が適用されません。(最初のコンポーネント以降のコンポーネントにフォーカスを移動した際に、imemodeプロパティ値が適用されます。)
alert、confirmなどのウィンドウ、もしくはnexacroアプリケーション内で別のプロセスとしてポップアップウィンドウを表示してから、再度nexacroアプリケーションにフォーカスを移動した際にも同様です。
nexacroアプリケーション内でimemodeプロパティ値を維持するためには、ユーザーがWindowsの設定を変更する必要があります。 Windows 10では、下図のように「キーボードの詳細設定 > 入力方法の切り替え > アプリ ウィンドウごとに異なる入力方法を設定する」項目のチェックボックスを選択してください。(デフォルト設定では未選択状態です。)
RP | 作成日 | 説明 |
---|---|---|
89164 | 2020-03-27 | OSの仕様変更による制約事項です。 ユーザーがOSの設定を変更することで、この問題を回避できます。 |
テキスト編集中のEnterキーの入力時にcanchange, onchangedイベントが発生しない事象
canchange, onchangedイベントは、テキストの編集中にEnterキーを入力したり、フォーカスを移動する際にvalueプロパティ値が更新されたタイミングで発生します。しかし、一部のOSではEnterキーの入力時にイベントが発生しないことがあります。
iOS/iPadOSのSafariでは、日本語IME入力時にEnterキーでテキスト入力を確定する場合にイベントが発生しないことがあります。Enterキーの入力時のキーコード値が不正な値になっている際に発生する事象です。
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で発生する制約事項です。 |
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"
また、下記のようにフォントサイズによって改行が発生しない場合もあります。
RP | 作成日 | 説明 |
---|---|---|
90155 | 2020-09-16 | IE11以下のバージョンで特定のプロパティ設定の組み合わせによる制約事項です。 fittocontentsプロパティとwordWrapプロパティを組み合わせて使用しないことで回避できます。 |
iOS13以上のバージョンにて、スクリーン情報が指定されたタイプで処理されない事象
iOS13以上のSafariで起動時に、アプリで設定しているスクリーンサイズが適用されないことがあります。「mobile_small」タイプのスクリーン情報を設定しているにも関わらず、iPhoneで「desktop」タイプのスクリーン情報が適用される事象です。iOS13以上では、下図のようにSafariの設定にて「デスクトップ用Webサイトを表示」オプションが「オン」の状態になっている場合にデバイス情報を確認することができないため、本事象が発生します。
RP90288_
RP | 作成日 | 説明 |
---|---|---|
90288 | 2020-08-24 | iOS13以上のバージョンでユーザーのオプション設定による制約事項です。 ユーザーが該当のオプションを「オフ」に変更するようにガイドすることで回避できます。 |
readonlyに設定している編集領域をタッチした際に完了ボタンが表示される事象
iOS12以下のバージョンではreadonlyに設定している編集領域をタッチした際に完了ボタンが表示される不具合がありました。本事象はiOS13以上のバージョンで改修されています。
readonlyに設定しているHTML inputタグをタッチした際にも同事象が発生します。以下の画像をご参照ください。
https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_input_readonly
本事象はreadonlyプロパティを「true」に設定しているEditコンポーネントをタッチした際に発生します。readonlyプロパティを明示的に設定していない場合でもコンポーネントの内部動作によってreadonlyとして処理されると同じ現象が発生します。例えば、Comboコンポーネントではtypeプロパティを「dropdown」に設定した場合にcomboedit領域がreadonlyとして処理されるため、comboedit領域をタッチすると「完了」ボタンが表示されます。
RP | 作成日 | 説明 |
---|---|---|
90694 | 2020-10-12 | iOS12以下の不具合による制約事項です。iOS13以上のバージョンでこの制約事項は該当しません。 |
Microsoft IMEによる入力が不正になる事象
Windows10 2004アップデートより導入された新しいMicrosoft IMEの影響により、特定のブラウザとの組み合わせでIME入力が不正となる事象が発生します。
この問題は、Windows(Microsoft IME)のバージョン、Windowsの設定の「以前のバージョンのMicrosoft IMEを使う」のON/OFF、ブラウザの種類、ブラウザのバージョンにより発生状況が異なり、nexacroのバージョンには依存しません。
ブラウザ | 確認されている現象 |
---|---|
Chrome、Edge | ・ CalendarのEditなど入力制限にかかる文字をIMEから入力すると、フォーカス移動した先のEditなどに入力制限で無効となったはずの文字が入力される。 ・ IMEから入力した文字列が重複して入力される。(例:「あいう」に続き、「えお」を入力すると、「あいうあいうえお」と入力されるなど) ・ IMEから入力した文字がキャレットの位置ではない部分に入力される。 ・ IMEからの入力で、キャレット位置が進まなくなる、あるいは文字が入力されずキャレット位置だけが進む。 ・ 矢印キーによるキャレット移動が正常に機能しない。 ・ Backspaceキーによる文字削除が正常に機能しない。 ・ Tabキーによるフォーカス移動ができなくなる。 ・ IMEのON/OFF状態が、表示上と実際の動作で異なり、IME OFFの表示にもかかわらず変換動作が行われる。 ・ IME入力確定後、1回目のEnterキー押下が反応しない。 ・ Editなどのinputfilterやinputtypeで入力制限をおこなうと、入力文字とは無関係な先行する位置の文字が削除される。 ・ テンキー入力時に不正な値が入力される。 |
Firefox | ・ Calendarの日付を区切るハイフンなどが上書きされる。 |
ブラウザを問わずWindows 2004以降の新しいIMEで確認されている現象 | ・ IMEのON/OFFができなくなる、ブラウザ以外のアプリケーションを含め、正常なキー入力が不能となるなど、様々な事象。 |
この問題は以下の環境にて発生することが確認されています。 ・ Windows10 + Chrome86~89の組み合わせ ・ Windows10 + Edge86~89の組み合わせ ・ Windows10 + Firefoxの組み合わせ Windows10で以下のブラウザを利用するか、それでも症状が改善しない場合は「以前のバージョンの IME (入力方式エディター) に戻す」をお試しください。この問題を回避できる場合があります。 ・ Chrome90以降 ・ Edge90以降 ・ IE11 |
関連する情報として、マイクロソフトより以下の告知が公開されています。
・Microsoft IME を使用している場合、Windows 10 バージョン 20H2 および Windows 10 バージョン 2004 で問題が発生する可能性があります。
https://support.microsoft.com/help/4564002
・ふりがなの自動入力が期待どおりに機能しない場合があります。
https://docs.microsoft.com/ja-jp/windows/release-health/status-windows-10-20h2#1528msgdesc
RP | 作成日 | 説明 |
---|---|---|
90630 94158 | 2021-07-26 2022-11-04 | 新しいMicrosoft IMEによる影響です。特定のブラウザ(Chrome90以降、Edge90以降、IE11)の使用、もしくはユーザーがOSの設定を変更することで、この問題を回避できる場合があります。 |
WebBrowserコンポーネント内にロードしているコンテンツに対して、ピンチズーム動作の制御に関する制約
iOS/iPadOS WRE、NREではピンチズーム動作を制御するためにHTML metaタグの属性とスクリプトを利用します。WebBrowserコンポーネントの場合、IFRAMEタグ領域内にロードされたコンテンツの属性情報はnexacroアプリケーションで取得できない情報のため、ピンチズーム動作を制御することができません。
nexacroアプリケーションでピンチズームが動作しないように設定していても、WebBrowserコンポーネント内にロードしているコンテンツ側でピンチズームを許可している場合には、WebBrowserコンポーネント領域内でピンチズーム操作を行うと、アプリケーション全体に影響を与えることがあります。
RP | 作成日 | 説明 |
---|---|---|
92685 | 2021-07-22 | iOS/iPadOSの制約事項です。 ロードされるコンテンツ内で必要なタグやスクリプトを直接作成する必要があります。 |
Calendarコンポーネントのcalendaredit領域の文字寄せが利用端末のOSによって異なる事象
Calendarコンポーネントのpopuptypeプロパティを「system」に設定している場合は実行環境によってcalendaredit領域の文字寄せが異なります。
popuptypeプロパティ値が「system」である場合、HTML input要素のtypeプロパティが「date」に設定されgenerateされたコードを使用しますが、該当のプロパティの動作が実行環境によって異なるため、本事象が発生します。詳細については以下の表をご参照ください。
実行環境 | 処理内容 |
---|---|
Windows macOS | デフォルト値は「left」です。 calendareditコントロールの-nexa-text-alianプロパティを設定することで中央揃え、右寄せ揃えに変更することができます。 |
Android | デフォルト値は「left」です。 Styleプロパティにより変更することはできません。 |
iOS、iPadOS | デフォルト値は「center」です。 Styleプロパティにより変更することはできません。 |
RP | 作成日 | 説明 |
---|---|---|
98454 | 2023-11-23 | HTML input要素でtypeプロパティが「date」に設定された場合、OSによって動作が異なるため発生する制約事項です。 |
iOS、iPadOSデバイスで入力したアポストロフィ(U+0027)が反映されない事象
typeプロパティ値が「string」であるMaskEditコンポーネントにて、formatプロパティの設定時にアポストロフィで囲んだ文字をそのまま表示するオプションを提供します。例えば、以下のようにフォーマットを設定している場合、アポストロフィで囲んだ文字をそのまま残して"_A_"形式で表示されます。
this.MaskEdit00.format = "@'A'@";
iOS、iPadOSデバイスでスマート句読点機能がオンになっていて、且つformatプロパティをユーザーが画面に入力した値に設定する場合、ユーザーがアポストロフィ(U+0027)を入力すると、実際は以下のように左シングルクォーテーション(U+2018)と右シングルクォーテーション(U+2019)に変換され入力されます。また、アポストロフィではない別の文字として認識され、MaskEditコンポーネントでは"_‘_’_"形式で表示されます。
this.MaskEdit00.format = "@‘A’@";
iOS、iPadOSデバイスでスマート句読点機能を使用しているかどうかを取得することができないため、ユーザーにアポストロフィを入力してもらう機能を使用している場合は注意する必要があります。MaskEditコンポーネントに限らずユーザーが入力したテキストを比較処理するような機能を使用する場合は同様です。
RP | 作成日 | 説明 |
---|---|---|
98527 | 2023-11-30 | iOS、iPadOSデバイスでスマート句読点機能の使用有無による制約事項です。 |
Sense Readerの使用時にGridコンポーネントのツリービューの展開/折りたたみのホットキーが利かない事象
アクセシビリティの設定有無に関係なく、Gridコンポーネントのtreeuseexpandkeyプロパティ値が「true」であれば左右方向キーによりツリービューを展開したり折りたたむことができます。
しかし、Sense Readerの使用時には左右方向キーがSense Reader側のホットキーとして優先的に適用されるため、左右方向キーによりツリービューのセルを操作することができません。
左右方向キーを使用するには仮想カーソルをブラウザモードに切り替える必要があります。
Gridコンポーネントのtreeuseexpandkeyプロパティ値が「true」である状態でSense Readerを使用する場合には、TabキーでGridコンポーネントに移動すると仮想カーソルがブラウザモードに切り替えられて動作します。該当モードでは左右方向キーによりツリービューのセルを操作することができます。Gridコンポーネントに移動する前にユーザーにTabキーを入力するようにガイドすることで、この問題を回避することができます。
RP | 作成日 | 説明 |
---|---|---|
98654 | 2023-12-19 | Sense Readerの使用時にホットキーが重複するため発生する事象です。 |
Calendarコンポーネントに日本語IMEモードで日本語を入力した際に既存の値が削除される事象
autoselectプロパティ値が「true」であるCalendarコンポーネントにて、Windows 11の日本語IMEモードで日本語をcalendaredit領域に入力すると、既存の値が削除されます。
例えば、Calendarコンポーネントにフォーカス移動しcalendaredit領域のテキストが選択中の状態で「あ」を入力すると、既存の値が削除されます。
Windows 11の日本語IMEモードで編集領域のテキストが選択中の状態で日本語を入力すると、不正な値でイベント(deleteContentBackward)を渡しすため発生する事象です。日本語IMEの不具合であり、日本語入力時の適切な情報を取得することができないため、不具合を修正することができません。
RP | 作成日 | 説明 |
---|---|---|
97051 | 2024-1-25 | Windows 11の日本語IMEの不具合による制約事項です。 |
Calendarコンポーネントでシステムポップアップカレンダーの表示中は他のコンポーネントに入力操作ができない事象
popuptypeプロパティ値が「system」であるCalendarコンポーネントにて、システムポップアップカレンダーが表示中の状態では、OSの種類によって他のコンポーネントに値を入力できない場合があります。
一部のOSではシステムポップアップカレンダーがが表示中で他のinput nodeにフォーカスを移動した際に異常終了する事象が発生します。異常終了させないために一部のOSでは動作を制限しています。
OSの種類 | 処理方式 |
---|---|
Android, iOS | システムポップアップカレンダーが表示中は他のコンポーネントに値を入力することができません。(他のコンポーネントへのフォーカス移動を許可しません。) |
iPadOS | システムポップアップカレンダーが表示中でも他のコンポーネントに値を入力することができます。 |
RP | 作成日 | 説明 |
---|---|---|
99039 | 2024-2-19 | 一部のOSでシステムポップアップカレンダーが表示中はinput nodeへのアクセス時に異常終了する事象による制約事項です。 21.0.0.1701以降のバージョンに対する制約事項です。 |
IMEの設定によってWebViewコンポーネントで韓国語の入力時に最後に入力した文字が削除される事象
Windows11のNREでWebViewコンポーネントにロードしているコンテンツ内のテキスト編集領域に韓国語を入力した後、WebViewコンポーネントの外にフォーカス移動した場合、最後に入力した文字が削除される問題が発生します。
本事象はWindows11の設定の「以前のバージョンのMicrosoft IMEを使う」項目がオフ状態で発生しますが、Windows11のIME機能とMicrosoft Edge WebView2 Controlの互換性問題が原因です。
以下の設定で「以前のバージョンのMicrosoft IMEを使う」項目をオンにすることでこの問題を回避することができます。
Settings > Time & language > Language & region > Korean > Options > Microsoft IME > Compatibility
RP | 作成日 | 説明 |
---|---|---|
101953 | 2025-02-21 | Windows11のNREの実行時にWebViewコンポーネントとIMEの互換性による機能制約です。 |
ブラウザごとの機能差による制約
Edit領域を持つコンポーネントにて、キャレット表示が異なる事象
Edit領域を持つコンポーネントのreadonlyプロパティ値が「true」である場合、キャレットの表示は各ブラウザに依存します。ただし、キャレットの表示有無にかかわらず、readonlyプロパティの設定値は適用され、Edit領域のテキストをユーザーが編集することはできません。
ブラウザ | 処理方法 |
---|---|
Firefox、IE | キャレットが表示され、マウスクリック時にキャレット位置が移動されます。 |
Chrome、Edge、 Safari、NRE | キャレットが表示されません。 |
RP | 作成日 | 説明 |
---|---|---|
37637 | 2014-09-24 | ブラウザごとの動作方式の違いによる制約事項です。 |
Styleに関する制約
Styleプロパティのうち、Nexacroでサポートしないプロパティや一部ブラウザのみサポートするプロパティは下記表の通りです。
プロパティ | サポート有無 | 参考 |
---|---|---|
edge | 入力値によっては、正常に動作しない場合があり、ブラウザごとに異なって表示されます。 | |
cursor | マウスカーソルを動かずに、他のプロパティが変わったことでmouseover elementが変更された場合、cursor typeが変更される機能が正常に動作しない可能性があります。 |
RP | 作成日 | 説明 |
---|---|---|
40056 | 2015-02-26 | background > imageedge (edge) |
改行記号が含まれている文字列の配置方法の違い
コンポーネントの-nexa-text-alignプロパティ値が「center」であり、wordwrapプロパティ値が「none」である場合、文字列に改行記号が含まれていると、NREとWebブラウザでは異なる配置方法で処理します。
Button、Static、FileDownload、GridCellControlで発生する事象です。
RP | 作成日 | 説明 |
---|---|---|
47603 | 2016-03-30 | プロパティ値の適用時に生成されるHTMLでwhitespace preオプションを使用する場合、画面に表示される領域のサイズの基準ではなく、テキスト領域を基準に中央揃えを行います。NREでは内部的に配置状態を調整する機能が追加され、Webブラウザとは表示が異なります。 |
hotkeyプロパティ値が適用されない事象
Webブラウザのショートカットキーと重複したキーをコンポーネントの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 | ブラウザごとの動作方式の違いによる制約事項です。ファイルパスの表示が異なっていても、ファイルのアップロード機能は正常に処理されます。 |
81686 | 2018-09-05 | multiselectプロパティ値をfalseに設定したときのパス表示の説明を修正しました。Edge、IEでファイルのパスではなく、仮想パスに表示されます。 |
openメソッドの実行時に、重複した子フレームの名前処理に関する制約
IE環境で、nexacroAPIのopenメソッドを実行する際に、複数の子フレームに対して、子フレーム名(ID)を指定するパラメータ(strName)を重複した名前で設定した場合、実行した際にスクリプトエラーが発生し、ポップアップウィンドウが表示されません。
NREや他のブラウザでは、同条件でスクリプトエラーが発生しませんが、ポップアップウィンドウを処理する方法がブラウザにより異なることからIE環境のみで発生する事象です。
ブラウザ | 同期方式 | 処理方法 |
---|---|---|
NRE | 同期 | ポップアップウィンドウを順次処理します。 |
Chrome | 非同期 | 最後に実行したポップアップウィンドウのJavaScriptのみ処理します。 |
Firefox | 非同期 | 最初に実行したポップアップウィンドウのJavaScriptのみ処理します。 |
IE | 非同期 | 名前が重複する全てのポップアップウィンドウのJavaScriptを処理します。その際にスクリプトエラーが発生します。 |
ポップアップウィンドウの処理について、子フレームの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メソッド実行時の基準領域
NREとWebブラウザでは、trackPopupメソッドを実行する際にコンポーネント(PopupDiv、PopupMenu)を表示する基準領域が異なります。NREではタイトルバーを含むフレームの領域を基準領域にしますが、Webブラウザではフレーム領域を除いたコンテンツ表示領域のみを基準領域にするため、同じ座標を指定しても、showtitlebarプロパティ値が「true」である場合には、NREとWebブラウザでコンポーネントが表示される位置が異なります。
代替スクリプト | 作成したスクリプトが正常に動作しない恐れがあるため、メソッド機能を修正してこの問題を解消することはできません。ただし、スクリプトの作成時にtrackPopupByComponentメソッドを使用したり、NREの場合はフレーム領域を除いた座標値を指定することで、同じ位置にコンポーネントを表示することができます。 |
---|
// trackPopupByComponentメソッド使用 var x = this.Button00.getOffsetLeft(); var y = this.Button00.getOffsetBottom(); this.pdiv.trackPopupByComponent(this, x, y);
// NREのフレーム領域を除く座標値の計算 var objBut = this.Button00; // コンポーネントの表示時に基準となるボタン 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とWebブラウザの動作方式の違いによる制約事項です。 |
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-6-20 | ブラウザごとの動作方式の違いによる制約事項です。 |
2017-10-10 | サンプルコード追加 |
synchronousモードでのtransactionメソッドの実行に関する制約
同期モードでトランザクションを行う場合(transactionメソッドのパラメータ[bAsync]を「false」に指定)、ブラウザによっては、アプリケーションが正常に動作しない場合があります。
ブラウザ | 関連エラー |
---|---|
Chrome、Firefox、Edge | deprecationメッセージを出力します。 |
IE | トランザクション終了後、フォーカスを失う事象が発生します。 |
RP | 作成日 | 説明 |
---|---|---|
74564 | 2017-07-25 | ブラウザごとの動作方式の違いによる制約事項です。 同期モードはパフォーマンス上の問題から一部のブラウザでdeprecationとして扱われていて、ブラウザのバージョンによっては、ここに記述された以外の機能制限がある場合があります。 |
Editコンポーネントに入力された文字が点滅する事象
Editコンポーネントにテキストを入力し、フォーカスを一度移動してから再度Editコンポーネントに戻ると、入力された文字が点滅、もしくは動いているように見える事象が発生します。
RP | 作成日 | 説明 |
---|---|---|
75016 | 2017-7-27 | ブラウザごとの動作方式の違いによる制約事項であり、Windows 7のIEで発生します。 |
SafariでsetPrivateProfile、getPrivateProfileメソッドを実行する際の機能制限
SafariでApplicationオブジェクトのsetPrivateProfile、getPrivateProfileメソッドを実行すると、スクリプトエラーが発生します。該当のエラーは下記のような場合に発生し、Safariのポリシーに基づいて発生するエラーです。
プライベートブラウズをオンにした場合
RP | 作成日 | 説明 |
---|---|---|
43492 42186 | 2015-6-25 | iOS、Windows、Mac OSのSafariで発生します。 Safariのオプション設定により、localStorage機能を使用できない場合に発生し、該当のオプションをオフにするようにガイドすることで、この問題を回避できます。 |
Editコンポーネントの上に他のコンポーネントを重ねた場合、キャレットが透ける事象
Editコンポーネントの上に他のコンポーネントが重なった場合、背面のEditコンポーネントのキャレットが前面のコンポーネントを透けて手前に表示される事象が発生します。
RP | 作成日 | 説明 |
---|---|---|
75777 | 2017-09-05 | ブラウザごとの動作方式の違いによる制約事項です。 IE、EdgeでDIVタグ内のINPUTタグを処理する際に発生します。 |
2020-03-24 | Edge(80 以上バージョン)ブラウザでは発生しない現象です。 現象が発生するEdgeブラウザバージョンを表記しました。 |
特定のスクリプトが一定時間以上プロセスを占有している場合、その間に発生したイベントが処理されない制約
IEでは、Formオブジェクトのsleepメソッドの実行やFor文のような繰り返し処理を行うスクリプトが一定時間プロセスを占有している場合、その間に発生した他のイベントを処理することができません。
例えば、sleepメソッドの実行中に、ボタンのクリックによりイベントが発生した場合、sleepメソッドの引数として指定された時間が経過すると、該当のイベントが処理されますが、IEでは処理されません。
RP | 作成日 | 説明 |
---|---|---|
75144 | 2017-8-18 | IEでは、スクリプトで長時間ブロッキングが発生する場合、IEによりBody部に対して「フォーカス喪失」がされ、その結果イベントが削除されます。 |
コンテキストメニューの「元に戻す」項目の選択時の動作方式の違い
テキスト編集領域を持つコンポーネントにて、入力された文字列を選択し、マウスの右クリックにより表示されるコンテキストメニューから「削除」または「切り取り」を行った後、他のコンポーネントのコンテキストメニューから「元に戻す」を行うと、ブラウザによって処理が異なります。
ブラウザ | 結果値 |
---|---|
Chrome、IE11、Edge | 「実行キャンセル」を選択時、動作しません。 |
Firefox | 次のコンポーネントのコンテキストメニューにて「元に戻す」が非活性になります。 |
[NRE]、Safari | コンテキストメニューに「元に戻す」が表示されず、ショートカットキーも無効になります。 |
WebブラウザでINPUTタグによるテキスト入力の場合には、NREと一部動作が異なります。「元に戻す」を選択した際に、Webブラウザからイベント情報を伝達できないため、動作の違いが発生します。
ブラウザ | 結果値(HTMLのINPUTタグのみ使用時) |
---|---|
Chrome、IE11、Edge | 前のコンポーネントにフォーカスを移動しながら入力値を元に戻します。 |
Firefox | 次のコンポーネントで「元に戻す」が非活性になります。 |
Safari | 「元に戻す」は表示されないが、ショートカットキー(Ctrl+Z)により、フォーカスを前のコンポーネントに移動し、入力値を元に戻します。 |
RP | 作成日 | 説明 |
---|---|---|
75871 | 2017-10-10 | ブラウザごとの動作方式の違いによる制約事項です。 |
onbeforeexit、onexitイベント内でのスクリプト実行に関する制約
Applicationオブジェクトのonbeforeexit、onexitイベント関数内に記述したスクリプトにて実行するalertメソッドやconfirmメソッドは、ブラウザによって処理されないことがあります。ブラウザ内でのイベントは処理しますが、関数内に記述された該当のメソッドは処理しません。
ブラウザ | 結果値 |
---|---|
Chrome、Edge、Firefox | onbeforeexit、onexitイベント関数内の該当メソッドを無視します。 |
IE、Safari、[NRE] | onbeforeexit、onexitイベント関数内の該当メソッドを処理します。 |
onbeforeexitイベントは、HTMLでbeforeunloadイベントを受けて処理しています。
beforeunloadイベント内で該当のメソッドを無視するようにHTML5仕様に勧告していて、ブラウザごとに処理方法が異なることから動作の違いが発生します。
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側の制約事項です。Nexacroでは、ブラウザ側のタッチイベント発生時にStatusを変更しますが、高速で移動した際はフォーカスが移動しないため、Statusだけが変更されるように見えます。Safari側から正常に情報が渡され、フォーカスだけが移動しないため、それをNexacroで補正することはできません。
RP | 作成日 | 説明 |
---|---|---|
77192 | 2017-11-27 | iOSのSafariの制約事項です。 Statusの変更はブラウザで正常に発生したイベントに対して処理したものであり、ブラウザ側の制約が解消されることによってこの問題も解消されます。 |
Divコンポーネント内に配置されたテキスト編集領域を持つコンポーネントが一部しか見えていない場合、フォーカス移動時にコンポーネントがちらつく事象
Divコンポーネント内に配置されたテキスト編集領域を持つコンポーネントが一部しか見えていない状態で該当のコンポーネントにフォーカスを移動すると、IEではコンポーネント全体が表示されるように内部的にスクロール位置を移動します。Nexacroでは、スクロールがユーザーの意図しない位置に移動された際に元の位置に戻しますが、その過程でコンポーネントがちらつくように見えることがあります。
一般的な画面構成では、Divコンポーネント内のコンポーネント全体が表示されるように配置しますが、ユーザーがDivコンポーネントのサイズを変更できるように設定している場合には、Divコンポーネントをリサイズするタイミングでちらつき現象が発生することがあります。
RP | 作成日 | 説明 |
---|---|---|
76992 | 2017-11-28 | IEの制約事項です。 |
テキスト編集領域を持つコンポーネントにフォーカス移動したタイミングでWaitカーソルが表示される場合、キャレット位置が末尾になる事象
テキスト編集領域を持つコンポーネントへのフォーカス移動が、transactionメソッドもしくはsetWaitCursorメソッドによるWaitカーソルの表示と同じタイミングで行われた場合、フォーカス移動時のキャレット位置は、マウスのクリック位置ではなく、テキストの末尾になる事象が発生します。
IEにて、Waitカーソル表示のレイヤー(DIVタグ)がテキスト編集領域(INPUTタグ)と重なって表示される場合に発生する事象です。
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コンポーネントのテキスト編集領域をクリックした場合はイベントが伝播されませんが、コンポーネント内のボタンやDatePicker領域をクリックした場合はイベントが伝播されます。
RP | 作成日 | 説明 |
---|---|---|
77734 | 2018-01-16 | ブラウザごとの動作方式の違いによる制約事項です。 |
コールバック関数でファイルダイアログボックスが表示できない制約
transactionメソッドの実行後に、設定されているコールバック関数内でファイルダイアログボックスを実行するメソッドを呼び出す場合、特定のWebブラウザではファイルダイアログボックスを表示できません。例えば、コールバック関数内でExcelImportObjectオブジェクトのimportDataメソッドを呼び出した際にファイルダイアログボックスは表示されません。
ユーザーの操作により発生するイベントではなく、スクリプトで生成されたイベントの場合、isTrustedプロパティ値が「false」として設定されますが、特定のWebブラウザではisTrustedプロパティ値によって、一部のアクションが制限されてしまうことがあります。
ブラウザ | 処理方法 |
---|---|
Firefox | ファイルダイアログを表示できません。 |
[NRE]、Chrome、IE, Firefox、Edge, Safari | 実行に制約がありません。 IEではisTrustedプロパティをサポートしません。 |
RP | 作成日 | 説明 |
---|---|---|
83198 | 2018-12-18 | NREとWebブラウザの動作方式の違いによる制約事項です。 |
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メソッドが実行されたため、コンポーネントが表示されてすぐ閉じられます。
本事象はChromeで発生します。alertやconfirmメソッドとtrackPopupメソッドを順次使用しない必要があります。
RP | 作成日 | 説明 |
---|---|---|
83521 | 2019-02-13 | Webブラウザの動作方式の違いによる制約事項です。 |
画面ロード時に、編集領域を持つコンポーネントが最初のフォーカスが設定されている場合の動作方法の違い
画面のロード時に最初のフォーカスが編集領域を持つコンポーネントにある場合、OSやブラウザによって動作方法が異なります。
ブラウザ | キャレット | キーボード表示 |
---|---|---|
デスクトップ環境 | ○ | 該当なし |
Android NRE | ○ | ○ |
Android Default Web Browser | ○ | ✕ |
iOS NRE | ✕ | ✕ |
iOS Default Web Browser | ✕ | ✕ |
RP | 作成日 | 説明 |
---|---|---|
81363 | 2019-01-07 | OSやWebブラウザごとの処理方法の違いによる制約事項です。 |
TextAreaコンポーネントに文字入力時にソフトウェアキーボードが表示されてキャレット位置が画面から外れる事象
TextAreaコンポーネントに複数行のテキストが入力されている状態で、任意の場所にキャレット移動すると、キーボードが表示されてキャレット位置が画面に表示されない事象が発生します。TextAreaコンポーネントのサイズがソフトウェアキーボードの表示領域より大きい場合には、キャレット位置を合わせることができません。
Androidのデフォルトブラウザで本事象を確認していますが、他の実行環境でも発生することがあります。
RP | 作成日 | 説明 |
---|---|---|
81443 | 2019-01-07 | OSやWebブラウザごとの処理方法の違いによる制約事項です。 |
コンポーネントのpaddingプロパティの適用時にテキストが見切れる事象
paddingプロパティを設定しているコンポーネントにて、テキストが表示される領域とpaddingプロパティ値が適用される領域が重なる場合、ブラウザとコンポーネントによって表示が異なります。
下記の例では、EditコンポーネントとButtonコンポーネントのpaddingプロパティ値を20pxに設定しています。NREの場合、padding領域だけテキストが見切れますが、Webブラウザではコンポーネントによってpaddingプロパティ値を一部のみ適用することで、テキストが見切れないように表示します。
ブラウザ | 処理方法 |
---|---|
[NRE] | padding領域と重なるテキストは見切れます。 |
Edge、Firefox、IE、Chrome、Safari | padding領域と重なる場合にはテキストの位置を調整し、テキストが見切れないように表示します。 |
RP | 作成日 | 説明 |
---|---|---|
78470、78181 | 2018-03-02 | OSやWebブラウザごとの処理方法の違いによる制約事項です。 |
-nexa-word-wrap(wordWrap)プロパティの値が「english」である場合、テキストが見切れる事象
コンポーネントのwordWrapプロパティ値が「english」である場合、特定の幅以下にコンポーネントのサイズが変更されると、NREとWebブラウザが違う方法でテキストを表示します
下図で赤い枠線で囲んでいる部分はChromeで実行した結果であり、それ以外の部分はNREで実行した結果です。widthプロパティを全体のテキストを表示できるようなサイズに設定している場合には、NREとWebブラウザでは同じ個所で改行をしています。しかし、小さいサイズに設定している場合には、NREではテキストが文字単位で改行していますが、Webブラウザではテキストが見切れます。
-nexa-word-wrap(wordWrap)プロパティを持つコンポーネントで発生する事象です。(TextAreaコンポーネントを除く)
-nexa-word-wrap(wordWrap)プロパティ値が「none」である場合にテキストの配置方法の違いによる制約については、下記の項目を参照してください。
RP | 作成日 | 説明 |
---|---|---|
82114 | 2019-03-14 | OSやWebブラウザごとの処理方法の違いによる制約事項です。 |
FileUploadコンポーネントにて、ファイル選択ダイアログボックスの「キャンセル」ボタンをクリックした際の動作がブラウザごとに異なる事象
FileUploadコンポーネントのファイル参照ボタンにより表示されたファイル選択ダイアログからファイルを選択します。再度ファイル参照ボタンをクリックし、今度はファイル選択ダイアログからファイルを選択せずに「キャンセル」ボタンをクリックすると、以前選択したファイルの情報が削除される事象が発生します。
本事象はChromeでのみ発生します。「キャンセル」ボタンをクリックすると以前選択したファイルがキャンセルされるため、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 | 「キャンセル」ボタンをクリックした際に何も実行されません。 |
本件はChromeでの既知の問題で、Chromeの機能になります。
https://bugs.chromium.org/p/chromium/issues/detail?id=2508
該当の動作はChromeの<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] | 編集領域がソフトウェアキーボードの下に隠れて見えません。 |
Webブラウザ | ソフトウェアキーボードが編集領域の手前に表示される事象が発生しません。 |
RP | 作成日 | 説明 |
---|---|---|
83857 | 2019-03-26 | ブラウザごとの動作方式の違いによる制約事項です。 |
swfコンテンツの上にPopupDivコンポーネントを配置している場合、-nexa-border(border)プロパティ値が適用されない事象
swfコンテンツの上にHTMLコンテンツを配置している場合、複数の制約が発生することがあります。その中で、IEではswfコンテンツの上にPopupDivコンポーネントを配置している場合、-nexa-border(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>
本件は既知の問題で、nexacro platfromとは関係なくswfコンテンツに関連する制約事項です。
https://stackoverflow.com/questions/2040887/div-z-index-issue-with-flash-movie
RP | 作成日 | 説明 |
---|---|---|
83596 | 2019-04-03 | ブラウザごとの動作方式の違いによる制約事項です。 |
WebブラウザでMainFrameオブジェクトのoncloseイベントが発生しない事象
Webブラウザのタブを閉じたり、Webブラウザを終了する場合、MainFrameオブジェクトのoncloseイベントは発生しません。ブラウザごとにoncloseイベントが発生する場合は下記の通りです。
ブラウザ | oncloseイベントが発生する場合 |
---|---|
[NRE]、Webブラウザ | Applicationオブジェクトのexitメソッドの呼び出し時 |
[NRE] | MainFrameオブジェクトのタイトルバー領域で閉じるボタンのクリック時 |
RP | 作成日 | 説明 |
---|---|---|
85783 | 2019-06-28 | NREとWebブラウザの動作方式の違いによる制約事項です。 |
Pluginコンポーネントの上にPopupDivコンポーネントを配置している場合、-nexa-border(border)プロパティ値が適用されない事象
PluginコンポーネントのActiveXコンテンツ(Windowed plugin)をロードし、その上にPopupDivコンポーネントを配置している場合、PopupDivコンポーネントとPluginコンポーネントが重なる領域では-nexa-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モードでの入力中、入力スピードを速くして文字を入力した際に値が不正になる問題
typeプロパティ値を「string」、且つformatプロパティ値を「99-99-99」に設定しているMaskEditコンポーネントに日本語IMEモードで入力すると、下記のような場合にキャレットの位置や入力値が誤って処理されることがあります。
入力スピードを速くしてテンキー入力した場合
日本語IMEモードで未確定文字の修正時に入力スピードを速くして入力した場合
formatプロパティ値は例示であり、他の設定値でもこの制約事項が発生することがあります。
下位コントロールとしてMaskEditControlを持つCalendar、Grid、Spinコンポーネントでも同様の事象が発生することがあります。
DOMレベルでキャレット位置の処理方式がブラウザごとに異なるため発生する問題であり、nexacro platfrom側で補正することはできません。
RP | 作成日 | 説明 |
---|---|---|
89301 88784 | 2020-06-11 | WindowsのChrome、Edge(80以上のバージョン)で発生します。 ブラウザごとの動作方式の違いによる制約事項です。 |
system.printメソッドにより、2ページ以降のコンテンツを出力できない事象
対象のコンテンツが2ページを超えている場合、Firefoxでsystem.printメソッドにより印刷すると、2ページ以降のコンテンツが印刷されない事象が発生します。
position:absoluteスタイルを使用しているHTML/CSSコンテンツの場合でも、2ページ以降のコンテンツを出力できない事象が発生します。
本件はFirefoxでの既知の問題で、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で発生します。 ブラウザごとの動作方式の違いによる制約事項です。 |
日本語IMEモードで入力確定前にvalue値として反映される事象
Chrome、Edge(80以上バージョン)では、日本語IMEモードで入力確定した文字列をCTRL+Aキーにより全選択した状態で、先頭の文字と同じ文字を入力すると、確定する前にvalue値として反映されてしまうことがあります。
たとえば、Editコンポーネントに日本語IMEモードで「あああ」を入力確定した後に、CTRL+Aキーにより全選択した状態で「あ」を入力した際のvalue値は下記の通りになります。
ブラウザ | value |
---|---|
Chrome、Edge(80以上バージョン) | あ |
[NRE]、Firefox、IE、Safari、Edge(44以下バージョン) | あああ |
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の表示アイコンが下図のように「✕」で表示されます。実行環境によって「✕」で表示されない場合があります。中国語IMEではinput modeの表示アイコンに変化はありません。
NREでは日本語、韓国語、中国語のIMEモードでinput modeの表示アイコンが英語入力モードに強制的に切り替えられ、ユーザーが任意で変更できなくなります。
RP93598
IMEのオフはCSS ime-mode属性を使用しています。
該当の機能はDeprecatedされていて、ブラウザ側のアップデートによりサポートされなくなる可能性があります。
RP | 作成日 | 説明 |
---|---|---|
90516 | 2021-06-09 | ブラウザごとの動作方式の違いによる制約事項です。 |
93598 | 2021-12-16 | Chrome、Edgeでの日本語、韓国語、中国語IMEの使用時の制約事項の説明を補完します。 |
SVGファイルの利用時の制約事項
画像ファイルを指定できるプロパティですが、メソッドによりSVGファイルを利用することができます。nexacro studio上でもイメージリソースファイルとして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」単位でのみ設定できます。 「%」単位では設定できません。 |
nexacro studioでSVGファイルの利用時の制約事項
Resource Explorerの[Theme > image editor]、[ImageResource]にて、画像のプレビュー機能はサポートしません。SVGファイルの選択時は代替テキストと代替画像が表示されます。
プロパティリストでSVGファイルを設定値として選択した際に、SVG要素内のviewBox、width、height属性がない場合はOutputウィンドウに警告メッセージ(必要な属性がないため、正しく適用されない可能性がある)が表示されます。
非サポートのプロパティ、メソッド
各プロパティ、メソッドの説明に特定のファイルの拡張子のみ利用できると明示されている場合はSVGファイルを利用できません。
RP | 作成日 | 説明 |
---|---|---|
93266 | 2022-03-29 | ブラウザごとの動作方式の違いによる制約事項です。 |
openメソッドにより表示したポップアップウィンドウのアドレスバーにフォーカスがある状態でF5キーもしくはEnterキーを押下した場合にウィンドウが閉じられる事象
openメソッドにより表示したポップアップウィンドウにて、ユーザーがアドレスバーにフォーカスを当て、F5キーもくしはEnterキーで再読み込みを試みる場合、ウィンドウが閉じられます。
ユーザーが上記の操作をした際に、ブラウザより渡されるイベント情報に正確な情報がないため、ユーザーがウィンドウを閉じたいのか、再読み込みをしたいのかを確認することができません。よって、上記の操作をした場合は常にポップアップを閉じる動作として処理します。
ユーザーの操作 | Desktop NRE | Desktop WRE |
---|---|---|
アドレスバーにフォーカス移動後 F5キーもしくはEnterキーの押下 | アドレスバーが表示されないため、対象外。 | ポップアップウィンドウが閉じられる。 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オブジェクトから作成したExcelファイルのセルをコピーして他の文書に貼り付けると、コピー先で色が変わる事象
ExcelExportObjectオブジェクトのexporttypeプロパティ値がnexacro.ExportTypes.EXCEL(Excel97~2003形式)の定数値である場合、ダウンロードしたExcelファイルからコピーしたセルを新しいExcel文書に貼り付けた際に、色情報はコピーされません。
exporttypeプロパティのデフォルト値はnexacro.ExportTypes.EXCELです。
RP | 作成日 | 説明 |
---|---|---|
48114 | 2016-05-18 | Excel97〜2003の場合、ユーザーが指定した色情報は該当ファイルにのみ適用されます。セルをコピーして他のファイルに貼り付けた場合には、該当の色情報が見つからないため、ユーザーが指定した色ではなく、別の色として処理されます。 |
画面の拡大・縮小時に、Gridコンポーネントのセル選択機能に関する制約
Gridコンポーネントのselecttypeプロパティ値が「multiarea」である場合、ブラウザを拡大または縮小した状態で、マウスのドラッグ操作により複数のセルを同時選択すると、想定通りの範囲が選択されません。Gridコンポーネント内の複数セルの選択時に、マウスカーソルの位置がGridコンポーネント領域から外れても選択機能は動作する必要があるため、スクリーン座標値を使用します。この過程で、選択範囲が異なって選択される問題が発生します。
ブラウザ | 制約発生環境 |
---|---|
Webブラウザ | ブラウザの拡大・縮小機能を使用する場合 |
RP | 作成日 | 説明 |
---|---|---|
70879 | 2017-01-17 | 想定通りの範囲が選択されない問題は、下記のような原因により発生します。 1)拡大・縮小を行った際に、画面上でコンポーネントのサイズは変りますが、HTMLノード上のサイズは変わりません。 2)拡大・縮小を行った際に、画面上でコンポーネントのサイズが変わることにつれ、マウスのカーソルがコンポーネント上にとどまる範囲が変わります。 |
WebBrowserコンポーネントの印刷時の制約
System.printメソッド呼び出し時に、ウィンドウサイズが小さい場合、スクロールバーが表示され、現在表示されていない領域まで印刷することができます。しかし、Form内にWebBrowserコンポーネントが含まれている場合は、printメソッド呼び出し時に、JavaScriptのwindow.printメソッドを実行します。window.printメソッドは現在表示されている領域のみ印刷します。
ブラウザ | System.printの処理方法 |
---|---|
NRE | WebBrowserコンポーネントの有無に関係なく、Formの全領域を印刷します。 |
Chrome、Edge、Firefox、 IE、Safari | WebBrowserコンポーネントが含まれている場合は、現在画面に表示される領域のみ印刷します。 |
下図のような場合、FormにEditコンポーネント2つが上下に配置されていて、右側にWebBrowserコンポーネントを配置し、地図を表示しています。System.printメソッドの呼び出し時に、NREでは赤い枠の領域が印刷されますが、Webブラウザでは青い枠の領域のみ印刷されます。
RP | 作成日 | 説明 |
---|---|---|
71680 | 2017-02-08 | Webブラウザの機能制限により、NREとWebブラウザでは、Form内にWebBrowserコンポーネントが含まれている場合、異なるprintメソッドを使用するように実装されています。 |
JavaScriptのメソッド使用に関する制約
Scopeを指定せずにalertメソッドやconfirmメソッドを呼び出す場合には、JavaScriptのメソッドが実行されます。JavaScriptのメソッドは、Nexacroが提供するメソッドと異なって動作することがあります。
this.Button00_onclick = function(obj:nexacro.Button, e:nexacro.ClickEventInfo) { alert("TEST"); // JavaScriptのalertメソッド this.alert("TEST"); // Formオブジェクトのalertメソッド nexacro.getApplication().alert("TEST"); // Applicationオブジェクトのalertメソッド }
下図のように、Nexacroで再定義したメソッドは、内部的に連携動作を行うためのコードを含んでいて、JavaSciptのデフォルトメソッドとは異なって処理されます。
RP | 作成日 | 説明 |
---|---|---|
2017-05-22 | NexacroスクリプトとJavaScriptのメソッド名が同一であることにより発生する制約事項です。開発時にはScopeを指定し、FormオブジェクトやApplicationオブジェクトのメソッドを使用することを推奨します。 |
HTTPヘッダー適用時、一部オプションに関する制約
セキュリティポリシーにより、サーバーからのHTTPヘッダー設定もしくはHTMLドキュメントへのmetaタグ適用が行われた場合、製品の内部機能上の理由で、一部オプションが制約されることがあります。
Content-Security-Policy
一部の機能が正常に動作しない場合があります。Nexacroライブラリの内部では、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オプション適用時に、一部機能が動作しない場合があります。Nexacroのコンポーネントの中で、ジェネレート時にIFRAMEを使用するコンポーネント(WebBrowser)や機能(画像処理、テキストサイズ・キャッシュ)が動作しません。
下記のように、DENYオプションを使用しないことで、正常に動作します。
<meta http-equiv="X-Frame-Options" content="… " />
RP | 作成日 | 説明 |
---|---|---|
72928 | 2017-6-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)の脆弱性については、画面から入力されたテキストに対してフィルタをかけたり、サーバー上で検証してから入力する方式を適用することができます。
Nexacro側で全てのセキュリティの脆弱性に対して対応することはできません。サーバーから受信したデータは正しいデータとして処理するため、サーバー側で検証済のデータを生成する必要があります。
onusernotifyイベント処理時にブラウザから渡される値の文字数制約
WebBrowserコンポーネント内でロードされたWeb文書から値が渡されると、onusernotifyイベントにて値を処理しますが、Windows端末用のNREでは処理可能な文字数の制約があります。
処理可能な文字数は、最大256文字(日本語)です。
RP | 作成日 | 説明 |
---|---|---|
76512 | 2017-10-19 | Windows端末用のNREにて値を受け取る際に使用しているWebブラウザ(IE)のtitle属性の文字数制約による制約事項です。 |
2018-08-08 | 本制約事項は、Windows OSでのみ発生します。 macOS、iOS、Androidでこの制約事項は該当しません。 |
Androidのフルスクリーン機能を設定したnexacroアプリケーションにて、入力コンポーネントがソフトウェアキーボードの下に隠れて見えない事象
AndroidManifest.xmlファイルに下記のようなフルスクリーンの設定を追加した場合には、入力コンポーネントにフォーカスが移動した際、ソフトウェアキーボードが表示されることによって、入力コンポーネントが隠れて見えなくなります。
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
RP | 作成日 | 説明 |
---|---|---|
77480 | 2017-12-13 | nexacroアプリではAndroidのフルスクリーン機能をサポートしません。 |
Androidのアプリ画面上でコンポーネントが常に手前に表示される事象
Android端末用のNREでは、一部のコンポーネントの上に他のコンポーネントを表示することができません。ポップアップで表示されるコンポーネントも該当するコンポーネントと重なる場合は、該当コンポーネントの下に表示されます。
対象コンポーネントは下記の通りです。
GoogleMap, WebBrowser
RP | 作成日 | 説明 |
---|---|---|
78897 | 2018-03-15 | Android端末用のNREでWebBrowserコンポーネントを含むアプリを実行する際の制約事項です。 |
89336 | 2020-04-23 | GoogleMapコンポーネントでも同様の制約事項が確認されたため、対象コンポーネントとして追記しました。 |
fittocontentsプロパティの適用時にテキストが見切れる事象
Staticコンポーネントにて、usedecorateプロパティを「true」に設定してイタリック(italic)効果を指定したり、fontプロパティをイタリック(italic)に設定した状態で、fittocontentsプロパティを「width」に設定した場合、テキストが見切れる事象が発生します。fittocontentsプロパティを適用する際に文字列の幅を計算しますが、イタリック(italic)効果を適用した状態の幅を正確に計算することができないため発生する事象です。
RP | 作成日 | 説明 |
---|---|---|
80378 | 2018-07-13 | fittocontentsプロパティの適用時にイタリック状態の文字列の幅を計算する方法がないため発生する事象です。 |
UTF-8でエンコードされていないファイルを開いた際に文字化けする事象
エンコード形式がUTF-8ではない場合に文字化けして表示されます。例えば、Shift-JISで保存されたファイルをNexacro Studioで開いた際に日本語の文字列は文字化けして表示されます。
Nexacro Studio内では、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プロパティ値を処理する際に正確なOS名を返しません。navigator.userAgentの文字列で確認して値を返しますが、製品名が異なる複数のOSが同じ文字列を返すことで発生する制約です。
system.osversionプロパティ値として取得される値は下記の通りです。
Windows Server製品の場合、Windowsアップデートプログラムやバージョンによって異なることがあります。
system.osversion | 対象OS |
---|---|
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情報からWindows Server製品有無を確認することができないため発生する制約事項です。 |
ColumnInfoオブジェクトのtypeプロパティを変更した後に、変更後のtypeに該当する値が設定されない事象
Datasetオブジェクトを生成した後、ColumnInfoオブジェクトのtypeプロパティを変更して、変更後のtypeに該当する値が設定されません。Datasetオブジェクトの生成時に内部的にColumnInfoオブジェクトのtypeプロパティ値に該当する変換関数を連結しておきますが、typeプロパティの変更時に変換関数が変更されないため発生する事象です。
例えば、下記のようなエラーが発生することがあります。変更前の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によるスタイルが表示されない事象
Nexacro StudioではThemeやXCSSファイルを編集する際にスタイルエディタ上でセレクタを選択すると、コンポーネントに対してセレクタのStatusによるプレビュー機能を提供します。Calendar、Gridコンポーネントのように、サブコントロールを持っていながらフレームワーク内部的にアクセス方式を決定する一部のコンポーネントでは、Statusによるプレビュー機能が正常に動作しません。
実行には問題がないですが、該当の機能をサポートするために修正した場合、フレームワークの構造を変更する必要があるため、不具合を修正せずに現状のままにしています。
下図のように、スタイルエディタではdisabled状態のプレビューを提供しませんが、デザイン画面ではenableプロパティを「false」に設定しているコンポーネントのプレビューをサポートします。
RP | 作成日 | 説明 |
---|---|---|
85014 | 2019-06-05 | 本事象は修正した場合にフレームワークの構造に影響を与える可能性があるため、現状のままにしています。 |
LiteDBConnectionオブジェクトで使用するDBファイルを配布することができない制約
iOS用アプリの配布時の設定としてUpdate Typeを「Server」に設定している場合、iOS側の権限処理の制約により、LiteDBConnectionオブジェクトで使用するDBファイルを配布することができません。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ファイルを生成してアクセスすることで回避することができます。 |
フォント名の先頭部分が一致する複数のフォントを使用している場合、正しく適用されない事象
同じ画面内でフォント名の先頭部分が一致する複数のフォントを使用している場合に発生する事象です。
WindowsのNREにて、最初に生成されるコンポーネントに適用されたフォント名が、その後に生成されるコンポーネントに適用されたフォント名を含む場合、後者のコンポーネントには最終的に前者のコンポーネントのフォントが反映される事象が発生します。
適用されたフォントの順番の例は下記の通りです。
Black
例えば、1つ目のStaticコンポーネントのフォントが「Arial Black」であり、2つ目のButtonコンポーネントのフォントが「Arial」である場合、下記の通りに表示されます。Webブラウザでは「Arial Black」と「Arial」がそれぞれ区別され処理されますが、Windows NREでは1つ目の「Arial Black」でのみ処理されます。
Formがロードされる順序の影響を受ける制約事項です。
Nexacro Studioのデザインウィンドウにて、画面作成時では実行環境によってフォントが正常に反映されているかように表示されますが、Nexacro Studioの再起動後に当該のFormを実行すると、Windowsの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">
同じコンテンツをWebブラウザで実行している場合にはこの問題が発生せず、AndroidのNREでのみ発生します。
nexacroのNREの構造的な問題により発生する制約事項です。
RP | 作成日 | 説明 |
---|---|---|
91925 | 2021-04-13 | AndroidのNREで発生する制約事項です。 フレームワークの構造に影響を与える可能性があるため、不具合を改修せずに現在の状態を維持しています。 |
nexacro studioにて、絵文字の出力に関する制約
nexacro studio内の編集ウィンドウ、プロパティウィンドウ、Outputウィンドウなどで絵文字を使用する場合、一部の文字に対して文字化けします。本事象はMicrosoft Windows基盤プログラムの制約であり、Windowsが提供するメモ帳でも同様の事象が発生します。
Windowsメモ帳
nexacro studio > プロパティウィンドウ、編集ウィンドウ
アプリケーションの実行時には正常に表示されます。画面上に表示される形式はOS、ブラウザ、デバイスなどに依存し、一部の文字は表示されない場合があります。
WRE
RP | 作成日 | 説明 |
---|---|---|
92450 | 2021-06-17 | Microsoft Windows基盤プログラムの制約事項です。 |
NREで実行時に絵文字の出力に関する制約
NREで実行する場合、以下のように絵文字と他の文字が重なって表示されます。
Windows NRE
「Family」絵文字の子供の画像(girl、boy、baby)が外側に配置されている絵文字を他の文字を一緒に使用する場合に重なって表示されます。
macOS NRE
全ての絵文字を他の文字と一緒に使用する場合に重なって表示されます。
RP | 作成日 | 説明 |
---|---|---|
92429 92428 92425 | 2021-06-29 | Windows、macOS NREで使用されているSkia(オープンソースのグラフィックスライブラリ)のバージョンが絵文字処理の標準を反映できないため発生する事象です。 |
ステータスバーをダブルタップした際、画面上部にスクロールしない事象
iOSではステータスバーをダブルタップすると画面上部にスクロールする機能をサポートします。ただし、nexacro WRE(Safari)では下記のような理由で該当の機能をサポートしません。
ステータスバー領域でタップイベントが発生した際に、その情報をHTML 環境で確認することはできません。(ネイティブアプリでのみ確認可。)
nexacroでは安定的な動作のため、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
上記のイベント一覧で1つ目(onlbuttondown)から5つ目(onselectchanged)の イベントハンドラ関数内でalert、confirmメソッドを実行する場合、ウィンドウを閉じるためにユーザーがクリックしたりEnterキーを入力する操作が追加で発生し、イベントの発生順序に影響を与えます。
alert、confirmメソッドの実行が必要な場合には、selectchangetypeプロパティを「up」に設定することでイベントの発生順序を変更することができます。selectchangetypeプロパティを変更する場合は他の処理に影響することがあるため、注意する必要があります。
RP | 作成日 | 説明 |
---|---|---|
95162 | 2022-08-30 | 内部的に処理されるイベントの間にユーザーの操作が発生することでイベントの発生順序に影響する制約事項です。 |
Datasetオブジェクトのデータのソート状態によって、getSumメソッドの戻り値が異なる事象
Datasetオブジェクトにて、keystringメソッドでデータを並べ替えた後にgetSumメソッドを実行すると、 ソート前とソート後で結果値が異なる場合があります。カラムのタイプが「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
この問題を回避するにはカラムのタイプを「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 | JavaScriptでは浮動小数点演算において正確な結果を保証しないため発生する制約事項です。 |
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
nexacro studioにて、Datasetの編集画面で直接設定する場合にも同様です。typeが「INT」であるConst ColumnとColumnにそれぞれ文字列の値を設定した状態でアプリケーションを実行すると、Const Columnは文字列の値がそのまま処理されますが、Columnでは有効じゃない値であるため、nexacro studioで設定された値が無効な値として処理されます。
Environment.datatyperuleプロパティ値とは関係なく、Const Columnのvalueの有効性チェックを行いません。
Gridコンポーネントとバインドされた場合、typeが一致しない値に変更されたConst Columnのvalueが表示されなかったり「invalid value」で表示されることがあります。GridコンポーネントのCellオブジェクトのdisplaytypeプロパティ値によって処理される事象であり、Const Columnのvalueの有効性チェックと関係なく動作します。
例えば、displaytypeプロパティが「normal」に設定されているセルに対して、Const Columnの typeが「INT」である場合「number」形式として動作し、有効性チェックは行わず、入力された文字列("TEST")が表示されません。displaytypeプロパティを「text」に変更すると、値が表示されます。
RP | 作成日 | 説明 |
---|---|---|
97217 | 2023-07-13 | 稼働中のユーザーアプリケーションとデータに影響を与える可能性があるため、不具合を改修せずに現在の状態を維持しています。 |
98955 | 2024-01-22 | setColumnメソッドの動作に関する説明を補完しました。 |
コンポーネントのonkillfocusイベントハンドラ関数内でWebViewコンポーネントのcallScriptメソッドの実行に関する制約
画面内でフォーカスが他のコンポーネントからWebViewコンポーネントに移動する場合、以前のコンポーネントのonkillfocusイベントハンドラ関数内でWebViewコンポーネントのcallScriptメソッドを実行すると、正常に動作しないことがあります。callScriptメソッドは同期方式で動作し、フォーカス関連のイベントと処理時点が重なることでクラッシュする可能性があります。
onkillfocusイベントの発生時にWebViewコンポーネントのcallScriptメソッドを実行する必要がある場合には、イベントハンドラ関数内でsetTimerメソッドにより一定時間遅延させることでクラッシュを回避することができます。
this.Edit00_onkillfocus = function(obj:nexacro.Edit,e:nexacro.KillFocusEventInfo) { this.setTimer(0, 1000); }; this.Form_ontimer = = function(obj:nexacro.Form,e:nexacro.TimerEventInfo) { var result = this.WebView00.callScript("document.body.innerHTML;"); this.killTimer(0); };
RP | 作成日 | 説明 |
---|---|---|
101355 | 2024-12-5 | WebViewコンポーネントのcallScriptメソッドの同期方式による動作の制約事項です。 |
モーダルウィンドウ上のWebViewコンポーネントでちらつきが発生する事象、以前のコンテンツの残像が残る事象
Windows NREでは、モーダルウィンドウで表示した画面のWebViewコンポーネントでロード中のコンテンツの画像を画面キャプチャして使用します。
WebViewコンポーネントでロード中のコンテンツが変更された後モーダルウィンドウを表示した場合、WebViewコンポーネント領域に一時的に以前画面キャプチャしたコンテンツの画像が表示されることがあります。使用環境によって以下のようなケースがあります。
WebViewコンポーネント領域でちらつきが発生する
以前画面キャプチャしたコンテンツの画像が一瞬表示された後現在ロード中のコンテンツの画像に切り替わる
WebViewコンポーネントを含む画面で以下のメソッドを使用する場合に本事象が発生することがあります。
ChildFrame > showModal
System > showModalSync
System > showModalWindow
RP | 作成日 | 説明 |
---|---|---|
101507 | 2025-01-09 | Windows NREでWebViewコンポーネントとモーダルウィンドウの実行時の特性による機能制約です。 |
仮想カーソルの使用に関する制約
21.0.0.1200以降のバージョンより、Sense Readerで使用する仮想カーソルをサポートします。仮想カーソルの使用有無によって基本のアクセシビリティの設定時と一部動作が異なる部分があるため、ここに制約事項として掲載します。
製品 | サポート対象バージョン / 環境 |
---|---|
nexacro beyond | 21.0.0.1200以上のバージョン
|
Sense Reader | 8.0以上
|
Environmentのプロパティの非サポート/一部サポート一覧
Sense Readerで提供する機能と重複するプロパティ、もしくはSense Readerの機能上の制約により非サポートのプロパティです。
Sense ReaderでブラウザのTabキーを有効化している場合(デフォルト値)と仮想カーソルのTabキーを有効化している場合では、Sense Readerで提供するショートカットキーが異なります。詳細については下記の表をご参照ください。
プロパティ | サポート範囲 | 非サポート事由/Sense Readerの提供機能 | ||
---|---|---|---|---|
対象 | ブラウザのTabキー | 仮想カーソルのTabキー | ||
tabkeycirculation | 一部サポート - プロパティを「form,cycle」もしくは「frame,cycle」に設定している場合、上下方向キーで選択ボックスる移動できません。 | Sense Readerの機能制約 | ||
accessibilityforwardkey | 非サポート | Sense Readerの提供機能 | ||
基本 | N | Ctrl+F2 | ||
ListBox | S | Ctrl+I | ||
Edit系 | F2 | Ctrl+F8 | ||
accessibilitybackwardkey | 非サポート | Sense Readerの提供機能 | ||
基本 | Shift+N | Ctrl+Shift+F2 | ||
ListBox | Shift+S | Ctrl+Shift+I | ||
Edit系 | Shift+F2 | Ctrl+Shift+F8 | ||
accessibilityheadingnexthotkey | 非サポート | Sense Readerの提供機能 | ||
基本 | H | Ctrl+F6 | ||
accessibilityheadingprevhotkey | 非サポート | Sense Readerの提供機能 | ||
基本 | Shift+H | Ctrl+Shift+F6 | ||
accessibilityhistorycount | 非サポート | Sense Readerの機能制約 | ||
accessibilityreplayhotkey | 非サポート | Sense Readerの機能制約 | ||
accessibilitywholereadhotkey | 非サポート | Sense Readerの提供機能 | ||
基本 | F11 | F11 | ||
accessibilitywholereadtype | 非サポート | Sense Readerの機能制約 |
コンポーネントのプロパティの非サポート/一部サポート一覧
コンポーネント/オブジェクト | プロパティ | サポート範囲 | 事由/Sense Reader提供機能 |
---|---|---|---|
GridBandControl | accessibilityenable | 常にfalseとして動作 | 運用中の機能に影響を与える可能性があるため、修正を保留し、制約事項とします。 |
テーブルモードのサポート
Sense Readerでテーブルモードを選択している場合、該当の機能をサポートするための動作について説明します。
使用時の制約
GridCellControl、CellSubCellControlオブジェクトのaccessibilityroleプロパティ値は「gridcell」が適用されます。
accessibilityroleプロパティを変更しても適用されません。
displaytype、edittypeプロパティの影響を受けません。
Chromeでのみ動作が保証されます。
Cell移動後に編集モードで仮想カーソルを一時解除し、編集完了後は仮想カーソルを再度有効にする必要があります。
仮想カーソルの一時解除(Ctrl + 下方向キー)、仮想カーソル有効化(Esc)
テーブルモードのホットキー
Gridコンポーネントで編集モードを設定している場合にのみホットキーを使用することができます。
テーブルモードのホットキーはBandの影響を受けずに移動します。
Action | Key |
---|---|
ページもしくはGridコンポーネントの循環 | T もしくは 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 | サポート範囲 | 事由/Sense Reader提供機能 |
---|---|---|---|
Radio | アイテム選択移動/左右方向キー | 非サポート - RadioItemの選択時に読み上げない | Sense Readerで左右方向キーの入力時に文字列移動として処理 |
Button FileDownload ImageViewer | Click/Enter | 一部サポート - Enterキーの入力時にonkeydown、onkeyupイベントは発生しない - onclickイベントの発生時にClickEventInfoオブジェクトのbuttonプロパティ値が「none」ではなく「lbutton」として処理される | Sense ReaderでEnterキーの入力時にマウスアクションとして処理 |
TextArea | 一部サポート - Enterキーの入力時に仮想カーソルが解除され、テキスト編集モードに切り替える | Sense Readerの機能制約 | |
Grid | Cell選択移動/方向キー | 一部サポート - 左右方向キーの入力時にCell選択移動、ツリー開閉機能をサポートしない - 上下方向キーでCell選択移動時にoncellposchanged > onselectchanged > onkeydownの順序でイベント発生 | Sense Readerで左右方向キーの入力時に文字列移動として処理。 Sense Readerで上下方向キーの入力時にkeydownイベントを処理しない。 |
Cell選択移動/Shift + 方向キー | 非サポート | Sense Readerの機能制約 | |
Cell編集モード/Enter | 一部サポート - Enterキーの入力時にonkeydown、onkeyupイベントは発生せずにonenterdownイベントのみ発生 | Sense Readerの機能制約 | |
Combo ComboControl | アイテム移動/Ctrl + 上下方向キー | 一部サポート - ComboListが表示された状態で最初のCtrl + 上下方向キーの入力時に仮想カーソルが解除され、アイテム間移動ができる状態に切り替える。以降Ctrl + 上下方向キーの入力時にアイテム間移動。 | Sense Readerの機能制約 |
ComboListクローズ/ESC | 一部サポート - ComboListが表示された状態でESCキーの入力時に仮想カーソル使用に設定され、2回目のESCキーの入力時にComboListを閉じる | Sense Readerの機能制約 | |
スクロールをサポートするコンポーネン | スクロール移動/Ctrl + 方向キー | 一部サポート - コンポーネントにフォーカスがある状態で最初のCtrl + 上下方向キーの入力時に仮想カーソルが解除され、スクロールできる状態に切り替える。以降Ctrl + 上下方向キーの入力時にスクロール。 (仮想カーソルを使用したい場合はESCキーを入力する) - HScrollBarControlの場合、仮想カーソルは解除されず、Ctrl + 左右方向キーの入力時にスクロール。 | Sense Readerの機能制約 |
Spin | 値の変更/Ctrl + 上下方向キー | 一部サポート - フォーカスがある状態でCtrl + 上下方向キーの入力時に仮想カーソルが解除され、値を変更できる状態に切り替える。以降Ctrl + 上下方向キーの入力時に値の変更。 (仮想カーソルを使用したい場合はESCキーを入力する) | Sense Readerの機能制約 |
Calendar CalendarControl | DatePickerクローズ/ESC | 一部サポート - DatePickerが表示された状態でESCキーの入力時仮想カーソル使用に設定され、、2回目のESCキーの入力時にDatePickerを閉じる | Sense Readerの機能制約 |
開発時の注意事項
仮想カーソルの状態情報を非サポート
Action、Keyによって、任意のキー入力時に仮想カーソルが一時的に解除されたり使用に設定されることがあります。
仮想カーソルの解除状態でTabキーにより次のコンポーネントにフォーカスが移動すると、自動的に仮想カーソル使用に設定されます。
開発者が指定した時点の仮想カーソルの状態を取得できるようなプロパティやメソッドはサポートしません。
選択ボックスの移動順序
Form内でtaborderプロパティ値が0であるコンポーネントのノードから順番通りに移動します。
画面内のtaborderとZ-Orderの順序が一致しない場合、正しくない順序で移動することがあります。
taborderに合わせてZ-Orderを変更したい場合には、メニュー[Design > Arrange to Tab Order] より変更することができます。
フォーカスの不一致
フォーカスの移動時にSense Readerがkeydownイベントを先に処理します。
onkeydownイベントと関連するイベント(onkeydown、onitemchangedなど)ハンドラ関数内でスクリプトでフォーカスを変更する場合、アプリケーションとSense Readerの仮想カーソルのフォーカスが一致しないことがあり、予期せぬ動作が発生する場合があります。
Gridコンポーネントのデータ編集機能の使用時には仮想カーソルの解除を推奨
Gridコンポーネント内のCell間の移動および編集機能は仮想カーソルが解除された状態で全ての機能を使用することができます。詳細については、テーブルモードのサポートをご参照ください。
表示のみの場合は仮想カーソルが使用中の状態でも問題ありません。
方向キーでフォーカス移動ができない場合にはTabキーを使用することができます。
Sense Readerの既知バグ
コンポーネント/オブジェクト | プロパティ | バグ |
---|---|---|
Edit Combo Calendar TextArea GroupBox ProgressBar | accessibilitylabel accessibilitydescription | 上下方向キーで選択ボックス移動時にプロパティの設定値を読み上げられない |