1) |
ダイアログやプログレスバー等のサブウィンドウを表示し閉じた際、CRSスクリプトでのフォーカス制御が無効になる |
|
【対象】Dialogクラス、ProgressBarクラス、Docクラス |
|
以下は、ダイアログ(Dialogオブジェクト)を表示した際の例です。 |
|
|
|
|
|
< サンプル >
Form Form1 {
Width = 323;
Height = 281;
TextBox TextBox1 {
X = 116;
Y = 81;
Width = 172;
Height = 32;
FontSize = 14;
Value = "LoginID";
FontFace = $BOLD;
Function OnGetFocus( e ) {
BgColor = $FFCCCC;
}
Function OnLostFocus( e ) {
BgColor = $STD;
}
}
Label Label1 {
X = 14;
Y = 85;
Width = 94;
Height = 27;
Value = "ログインID";
FontFace = $BOLD;
VerticalAlign = $CENTER;
HorizontalAlign = $CENTER;
}
TextBox TextBox2 {
X = 117;
Y = 128;
Width = 172;
Height = 32;
FontSize = 14;
Value = "PassWord";
FontFace = $BOLD;
Function OnGetFocus( e ) {
BgColor = $FFCCCC;
}
Function OnLostFocus( e ) {
BgColor = $STD;
}
}
Label Label2 {
X = 14;
Y = 131;
Width = 94;
Height = 27;
Value = "パスワード";
FontFace = $BOLD;
HorizontalAlign = $CENTER;
VerticalAlign = $CENTER;
}
Button Button1 {
X = 185;
Y = 185;
Width = 107;
Height = 34;
Title = "ログイン";
FontFace = $BOLD;
Function OnTouch( e ) {
//.Get("Dialog1.crs");
}
}
}
|
|
Dialog Dialog1 {
Title = "Dialog1";
Form Form1 {
Width = 332;
Height = 269;
Button Button1 {
X = 145;
Y = 171;
Width = 129;
Height = 45;
Title = "閉じる";
FontFace = $BOLD;
Function OnTouch( e ) {
/* 親画面のログインIDにフォーカスを当てる */
//.Form1.TextBox1.SetFocus(); /* ★実行してもフォーカスがセットされない(無効) */
Dialog1.Delete();
}
}
Label Label1 {
X = 24;
Y = 85;
Width = 251;
Height = 67;
Value = "ログインID、またはパスワードが間違っています。再入力してください。";
FontSize = 12;
FgColor = $333333;
FontFace = $BOLD;
}
}
}
|
|
|
2) |
ファイル選択ダイアログを表示し閉じた際に、SetFocusメソッドを実行すると、CRSスクリプトのフォーカス制御が無効になり入力項目への入力ができなくなる |
|
【対象】 FileSystemクラスのOpenDialogメソッド、SaveDialogメソッド |
|
以下は、OpenDialogメソッドを実行した際の例です。 |
|
|
|
一度フォーカスを他のオブジェクトに移動した後、もう一度クリックするとフォーカスが当たり入力可能となります。 |
|
|
|
< サンプル >
Form Form5 {
Width = 400;
Height = 300;
Button Button2 {
X = 25;
Y = 15;
Width = 154;
Height = 38;
Title = "ファイル選択";
Function OnTouch( e ) {
try{
var fs = new FileSystem;
var f = fs.OpenDialog("ファイルを開く", "CSVファイル(*.csv)=*.csv", "csv", "");
var data = f.Read();
f.Close();
/* ファイルIDにフォーカスを当てる */
^.TextBox1.SetFocus(); /* ★実行すると事象が発生する */
}catch(e){
//.MessageBox(e.Message);
}
}
}
Label Label2 {
X = 27;
Y = 60;
Width = 102;
Height = 38;
Value = "ファイル名";
HorizontalAlign = $CENTER;
VerticalAlign = $CENTER;
FontFace = $BOLD;
}
TextBox TextBox2 {
X = 137;
Y = 61;
Width = 180;
Height = 34;
FontSize = 14;
Function OnGetFocus( e ) {
BgColor = $FFCCCC;
}
Function OnLostFocus( e ) {
BgColor = $STD;
}
}
Label Label1 {
X = 27;
Y = 107;
Width = 102;
Height = 38;
Value = "ファイルID";
HorizontalAlign = $CENTER;
VerticalAlign = $CENTER;
FontFace = $BOLD;
}
TextBox TextBox1 {
X = 137;
Y = 109;
Width = 180;
Height = 34;
FontSize = 14;
Function OnGetFocus( e ) {
BgColor = $FFCCCC;
}
Function OnLostFocus( e ) {
BgColor = $STD;
}
}
}
|
|
|
3) |
ファイル選択ダイアログを表示し閉じた際に、SSpreadオブジェクトへSetFocusメソッドを実行するとフォーカスが
SSpreadオブジェクトへ当たっているのに、フォーカルが当たっている事を示す枠線が表示されない、
またSSpreadオブジェクトのGetFocusイベントが発生しない |
|
【対象】 SSpreadクラス、FileSystemクラスのOpenDialogメソッド、SaveDialogメソッド |
|
|
|
|
|
< サンプル >
Form Form1 {
Width = 450;
Height = 500;
Button Button1 {
X = 25;
Y = 15;
Width = 300;
Height = 38;
Title = "ファイル選択(選択後スプレッドシートにフォーカス)";
Function OnTouch( e ) {
try{
var fs = new FileSystem;
var f = fs.OpenDialog("ファイルを開く", "CSVファイル(*.csv)=*.csv", "csv", "");
var data = f.Read();
f.Close();
/* スプレッドシートにフォーカスを当てる */
^.SSpread1.SetFocus();
}catch(e){
//.MessageBox(e.Message);
}
}
}
Label Label1 {
X = 27;
Y = 90;
Width = 102;
Height = 38;
Value = "イベント発生確認";
HorizontalAlign = $CENTER;
VerticalAlign = $CENTER;
FontFace = $BOLD;
}
TextBox TextBox1 {
X = 137;
Y = 90;
Width = 180;
Height = 34;
FontSize = 14;
Function OnGetFocus( e ) {
BgColor = $FFCCCC;
}
Function OnLostFocus( e ) {
BgColor = $STD;
}
}
SSpread SSpread1 {
X = 25;
Y = 150;
Width = 400;
Height = 300;
Function OnGetFocus( e ) {
/* テキストボックスに文字列をセット */
^.TextBox1.Value = "SSpread_GetFocus";
}
}
}
|
|
|
4) |
サブウィンドウを表示し閉じた際に、HtmlViewオブジェクトへSetFocusメソッドを実行すると、Tabキーが動作しなくなるケースがある |
|
詳細な調査の結果、上記4)の事象はInternet Explorer上でも発生し、Microsoft Edge Internet Explorerモード固有の問題では無い事が判明したため対処は実施致しません。
|
|
|
5) |
Biz/Browser Vを内部起動しているウィンドウを閉じるとBiz/Browser Vのプロセスが残るケースがある |
|
本事象は、プログラムの定義方法や処理によらずBiz/Browser Vを内部起動している場合に発生します。 |
|
|