データグリッドビューで行われたクリックのクリック数を累積したいのですが、常に 1 クリックが得られます
Private Sub ClickMouse(sender As Object, e As DataGridViewCellMouseEventArgs) Handles LRInc.CellMouseClick
MsgBox(e.Clicks & e.ColumnIndex & e.RowIndex)
End Sub
データグリッドビューで行われたクリックのクリック数を累積したいのですが、常に 1 クリックが得られます
Private Sub ClickMouse(sender As Object, e As DataGridViewCellMouseEventArgs) Handles LRInc.CellMouseClick
MsgBox(e.Clicks & e.ColumnIndex & e.RowIndex)
End Sub
DataGridViewでイベントOnMouseDownを使用する
private void dataGridView1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Clicks == 1)
{
// Single Click occurred.
label1.Text="Single Click";
}
if (e.Clicks == 2)
{
// Double Click occurred.
label1.Text = "Double Click";
}
}
MessageBox
最初のクリックが発生したときに表示され、他のクリックは無視されます。結果を表示するには、別のメソッドを実装する必要があります。
Private Sub ClickMouse(sender As Object, e As DataGridViewCellMouseEventArgs) Handles datagridview.CellMouseClick
System.Diagnostics.Debug.Print(e.Clicks & e.ColumnIndex & e.RowIndex)
End Sub
結果は出力ウィンドウに表示されます。
または、TextBox ( Text1
) を作成して結果を保持することもできます
Private Sub ClickMouse(sender As Object, e As DataGridViewCellMouseEventArgs) Handles datagridview.CellMouseClick
Text1.text = e.Clicks & e.ColumnIndex & e.RowIndex
End Sub
編集 - 蓄積
宣言と初期化:
Private Accums As New ArrayList
イベント:
Private Sub ClickMouse(sender As Object, e As DataGridViewCellMouseEventArgs) Handles datagridview.CellMouseClick
Accums.Add(New Integer() {e.Clicks, e.ColumnIndex, e.RowIndex})
End Sub