| □投稿者/ howlingさん
■No65256 (マーサ さん) に返信
howlingさんのコードやってみたのですがIMEは働きませんでした。指定方法が悪いのかといろいろ試したのですがどうやらフォーム1からの
呼び出しに問題があったようです。
private void Form1_Load(object sender, EventArgs e)
{
Form2 f = new Form2();
f.ShowDialog(this);
f.Dispose();
}
でフォーム2を呼び出すとどうやってもフォーム2の最初のテキストボックスはIMEを受け付けません。(イベントハンドラの追加はしていました)
ただ、フォーム1表示後にボタンクリックなどから
private void button1_Click(object sender, EventArgs e)
{
Form2 f = new Form2();
f.ShowDialog(this);
f.Dispose();
}
と呼び出せばフォーム2のテキストボックスはプロパティの設定だけでもIMEを受け付けました。結局親フォームがしっかり表示されてからイベントで
子フォームを呼ばなければちゃんと動かないんだという結論になりました。ので今回はファイルがなければメッセージを出してボタンを押して
入力フォームを出すようにします。いろいろありがとうございました。 |