これは、インストール画面のコンソール出力に対するフォローアップの質問ですか?
インストール中に何が起こったかを表示するテキスト領域コンポーネント (「log.display」) を含む画面を構成しました。インストールは、この画面に添付されているスクリプトで実行されます。インストール手順が完了したら、次のようなことを行います (displayLog は前に初期化されます)。
displayLog = displayLog + currentStep + " done. \n";
context.setVariable("log.display",displayLog);
残念ながら、テキスト領域コンポーネントはこれによって更新されません。スクリプトからテキスト領域を動的に更新するには、どうすればよいですか (しなければなりません) ?
編集:
私が見つけた:
formPanelContainer = (FormPanelContainer)context.getScreenById(<screenID>);
formPanelContainer.getFormEnvironment().reinitializeFormComponents();
これは機能しているように見えますが、問題が 1 つあります。このソリューションで表示される「ログ」に、テキスト領域が表示できるよりも多くの行が含まれている場合、垂直スクロールバーは表示されますが、最後の行まで自動的にスクロールされません。テキスト領域にそれをさせる方法はありますか?
もう 1 つの質問: screenID を指定せずに現在の画面のコンテキストを尋ねることは可能ですか (何が変わる可能性がありますか)?
ありがとう!フランク