次のコードを試していました。
public Form1()
{
InitializeComponent();
this.MouseWheel += new MouseEventHandler(Form1_MouseWheel);
}
private void Form1_MouseWheel(object sender, MouseEventArgs e)
{
textBox1.Text += "delta : " + e.Delta + "\r\n";
}
しかし、イベントが発生することはありませんでした。次に、フォームが表示されるとすぐに Textbox にフォーカスがあることに気付きました。実際、それを削除した後、イベントが機能し始めました。
さて、質問:
- テキストエリアがある場合でも、フォームが一番上のウィンドウであるときにイベントを発生させるにはどうすればよいですか?
- 同じイベントをテキストエリアに単純に追加する必要がありますか、それとも表示されない簡単な方法はありますか?
- イベントが発生する前に「ホイールの回転」が終了するのを待つ方法はありますか? ホイールが回転している時間に基づいて、整数値を指数関数的に増加させる必要があります