C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: コンボボックスでカーソル移動防止


(過去ログ 110 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■65263 / inTopicNo.1)  コンボボックスでカーソル移動防止
  
□投稿者/ YU (1回)-(2013/02/15(Fri) 14:09:37)

分類:[.NET 全般] 

お世話になります。
現在、コンボボックスとマウスホイールイベントを組み合わせた機能を作っています。
コンボボックスでマウスホイールを行うとフォーカスが次のコントロールに移動してしまいます。
テキストボックスではマウスホイールを行ってもスクロールバーのイベントが発生します。
コンボボックスでも同様にカーソル移動ではなく、スクロールされるにはどうしたらいいでしょうか?

宜しくお願いします。
引用返信 編集キー/
■65269 / inTopicNo.2)  Re[1]: コンボボックスでカーソル移動防止
□投稿者/ howling (196回)-(2013/02/15(Fri) 16:39:39)
No65263 (YU さん) に返信
あ、できれば環境を書いて頂けると助かります。
そうだったっけ?と思ってC#上ではやってみましたが、
そもそもデフォルトでマウスホイール動かすとコンボボックス内の次の選択肢に移動しましたので。
引用返信 編集キー/
■65270 / inTopicNo.3)  Re[2]: コンボボックスでカーソル移動防止
□投稿者/ YU (2回)-(2013/02/15(Fri) 17:08:42)
No65269 (howling さん) に返信
> ■No65263 (YU さん) に返信
> あ、できれば環境を書いて頂けると助かります。
> そうだったっけ?と思ってC#上ではやってみましたが、
> そもそもデフォルトでマウスホイール動かすとコンボボックス内の次の選択肢に移動しましたので。

・Windows7 VB2010
・エルタブレ等の外部ツール使用無し。

マウスホイールイベント、スクロールバーイベントを駆使して試みていますが、うまくきません。
なお、コンボボックスの内容変更時は次のコントロールに移動させないといけません。

よろしくお願いします。
引用返信 編集キー/
■65296 / inTopicNo.4)  Re[1]: コンボボックスでカーソル移動防止
□投稿者/ Jitta (28回)-(2013/02/17(Sun) 00:46:09)
Jitta さんの Web サイト
No65263 (YU さん) に返信
> お世話になります。
> 現在、コンボボックスとマウスホイールイベントを組み合わせた機能を作っています。
> コンボボックスでマウスホイールを行うとフォーカスが次のコントロールに移動してしまいます。
> テキストボックスではマウスホイールを行ってもスクロールバーのイベントが発生します。
> コンボボックスでも同様にカーソル移動ではなく、スクロールされるにはどうしたらいいでしょうか?
>
> 宜しくお願いします。

「マウスホイールを行う」って、どんなこと?(いや、マウスホイールを回すと、だとは思うけど、一応ね)

「コンボボックスでマウスホイールを行うとフォーカスが次のコントロールに移動してしまいます」と書いている後に
「コンボボックスでも同様にカーソル移動ではなく」と、動作が変わっているのはなぜ?
「フォーカスの移動」と「カーソルの移動」は、違う事象ですよね。
引用返信 編集キー/
■65325 / inTopicNo.5)  Re[1]: コンボボックスでカーソル移動防止
□投稿者/ shu (189回)-(2013/02/18(Mon) 16:25:22)
No65263 (YU さん) に返信

ドロップダウンしてよければ以下のようでどうでしょう?

    Private Sub Form1_Load(sender As Object, e As System.EventArgs) Handles Me.Load
        ComboBox1.DataSource = Enumerable.Range(1, 1000).Select(Function(i) String.Format("Item{0}", i)).ToList
    End Sub

    Private Sub ComboBox1_MouseWheel(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles ComboBox1.MouseWheel
        If Not ComboBox1.DroppedDown Then
            ComboBox1.DroppedDown = True
        End If
    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
        TextBox1.Focus()
    End Sub

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -