![]() ![]() ![]() |

スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | トピック |
---|---|
nakapon | 投稿日時: 2023-8-9 13:21 |
EA Administrator ![]() ![]() 投稿: 450 |
Session.Inputで表示されるダイアログが動作しないサポート宛てにいただきましたご指摘の要約です。
○ご指摘 EA上でJavaScriptで以下のように Session.Inputを実行したところ 入力ダイアログは表示されるのですが 入力を受け付けない、という現象が発生しました。 var str = Session.Input("文字を入力してください") Session.Output("入力した文字:" + str) ○回答 弊社のいくつかの環境で確認したところ 現象が再現する環境がございました。 調査したところ、 Windows10 + Microsoft IME の環境で再現するようです。 (Windows11では再現しません) 回避策につきましては、以下いずれかとなります。 ■回避策(概要) A.「以前のバージョンのMicrosoft IME を使う」をオンにする ※Microsoft IMEはEA以外の入力でも利用していますので お客様の責任で設定変更をお願いいたします。 B.別の方法で入力ダイアログを表示する ※EA 64ビット版では利用できません。 ■回避策(手順) 上記Aの手順は以下のとおりです。 A1.タスクバーのIMEアイコンを右クリック > 設定 > 全般 > 互換性 で 「以前のバージョンのMicrosoft IME を使う」をオンにします。 A2.EAを再起動します。 上記で設定した内容を元に戻したい場合は、 Windowsメニュー > 設定 > 時刻と言語 > 言語 > 優先する言語 > 日本語 > オプション > キーボード > Microsoft IME > オプション > 全般 > 互換性 で 上記設定をオフにします。 上記Bの手順は以下のとおりです。 EAScriptLibグループ配下のJavaScript-Dialog.DLGInputBox() を使って入力ダイアログを表示します。 ただし、JavaScript-Dialogの内容にバグがあるため 以下の手順でご利用ください。 B1.新規JavaScriptを作成し(仮称:Sample)、JavaScript-Dialogの内容を コピー&ペーストする。 B2.Sample内の「vbe.eval」を「vbe.Eval」に修正する。 B3.自身のJavaScript内に以下を追加します。 (以下は例ですので適宜修正ください) ----- !INC <グループ名>.Sample var str = DLGInputBox( "入力してください", "入力画面", "デフォルト文字列") ----- 尚、参考情報になりますが、DLGInputBox()については VBScript、JScript向けもあり、現状は以下のとおりです。 ・VBScript EAScriptLibグループ配下のVBScript-Dialog.DLGInputBox()を そのままご利用いただけます。そのため上記手順の1,2は不要です。 EA 32ビット版・64ビット版のどちらも動作します。 ・JScript EAScriptLibグループ配下のJScript-Dialog.DLGInputBox()を そのままご利用いただけます。そのため上記手順の1,2は不要です。 EA 32ビット版では動作しますが、64ビット版では動作しません。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |