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

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

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

Re[1]: スクロールイベントの終了検知


(過去ログ 171 を表示中)

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

■98558 / inTopicNo.1)  スクロールイベントの終了検知
  
□投稿者/ VB201初心者 (1回)-(2021/12/01(Wed) 12:08:29)

分類:[VB.NET/VB2005 以降] 

Visual Basic 2010 Windows Form


通常のパソコンだったら

datagridviewのスクロールについて

マウスを使用して移動させると思いますが
マウスの移動が終了したことを検出するイベントは、ありますでしょうか?



タッチパネル式のパソコンだったら

datagridview スクロールについて

タッチを使用して移動させると思いますが
タッチの移動が終了したことを検出するイベントは、ありますでしょうか?

両方、統一されたイベントでも構いません
引用返信 編集キー/
■98559 / inTopicNo.2)  Re[1]: スクロールイベントの終了検知
□投稿者/ 魔界の仮面弁士 (3236回)-(2021/12/01(Wed) 14:02:25)
No98558 (VB201初心者 さん) に返信
> Visual Basic 2010 Windows Form

.NET Framework 4 も VS2010 も 既にサポートが終了しているので
後継バージョンへの移行をお奨めします。既に 10 年以上前の製品ですし。


> マウスの移動が終了したことを検出するイベントは、ありますでしょうか?
『Scroll イベント発生後、最初にアイドル状態になったタイミング』を
スクロール終了と捉えてみるのは如何でしょうか。


Public Class Form1
  Private scrolling As Boolean = False
  Private Sub EndScroll(sender As Object, e As EventArgs)
    RemoveHandler Application.Idle, AddressOf EndScroll
    scrolling = False

    Debug.WriteLine("スクロール終了 " & Now.ToString("HH:mm:ss.ffff"))
  End Sub

  Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    DataGridView1.ColumnCount = 10
    DataGridView1.RowCount = 30000
  End Sub

  Private Sub DataGridView1_Scroll(sender As Object, e As System.Windows.Forms.ScrollEventArgs) Handles DataGridView1.Scroll
    If Not scrolling Then
      scrolling = True
      AddHandler Application.Idle, AddressOf EndScroll
    End If
  End Sub
End Class
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -