0

データグリッドビューで行われたクリックのクリック数を累積したいのですが、常に 1 クリックが得られます

    Private Sub ClickMouse(sender As Object, e As DataGridViewCellMouseEventArgs) Handles LRInc.CellMouseClick
    MsgBox(e.Clicks & e.ColumnIndex & e.RowIndex)
End Sub
4

2 に答える 2

0

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";
            }

        }
于 2013-05-18T19:03:29.733 に答える
0

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
于 2013-05-18T21:45:32.920 に答える