02-22-2013, 06:31 PM
コントロールを配置した画面を、Dialogにいれて、
Dialog.show で表示したときには、デフォルトで一番上のコントロールにフォーカスが入っていると思います。
しかし、replace メソッドで、画面を遷移させたときには、同じような画面でも一番上のコントロールにはフォーカスが入っていません。
どうすれば、Dialog.show で表示したときと同じようにフォーカスを当てた状態にできますか?
業務画面ごとに、初期フォーカスをbecome-active を利用してフォーカスを当てるようなことはしたくないです。
サンプルとは違いますが、現在はSonntag を使っているので、Sonntag で同様の方法があれば教えていただきたいです。
Dialog.show で表示したときには、デフォルトで一番上のコントロールにフォーカスが入っていると思います。
しかし、replace メソッドで、画面を遷移させたときには、同じような画面でも一番上のコントロールにはフォーカスが入っていません。
どうすれば、Dialog.show で表示したときと同じようにフォーカスを当てた状態にできますか?
業務画面ごとに、初期フォーカスをbecome-active を利用してフォーカスを当てるようなことはしたくないです。
サンプルとは違いますが、現在はSonntag を使っているので、Sonntag で同様の方法があれば教えていただきたいです。
Code:
{curl 8.0 applet}
{curl-file-attributes character-encoding = "utf8"}
{applet manifest = "manifest.mcurl",
{compiler-directives careful? = true}
}
{def d =
{Dialog
{on WindowClose do
{exit}
}
}
}
{define-proc {get-screen}:Frame
{return
{Frame
{VBox
{TextField },
{CommandButton
{on Action do
{d.add replace? = true, {get-screen}}
}
}
}
}
}
}
{do
{d.add {get-screen}}
{d.show}
}