1

イベントを使用してDataGridView_CellMouseEnter、マウスが列ヘッダーの1つにあるかどうかを確認しようとしていますが、わかりません。

Private Sub DataGridView_CellMouseEnter(sender As Object, _
                                        e As DataGridViewCellEventArgs) _
                                        Handles DataGridView.CellMouseEnter
  If (StrComp(e.ColumnIndex.ToString, "1")) Then
    Me.Cursor = Cursors.WaitCursor
  Else
    Me.Cursor = Cursors.IBeam
  End If
End Sub

誰かが私を助けてくれるなら、私は本当に感謝します。

4

2 に答える 2

3

RowIndex = -1は、次のことを示しています。

Private Sub DataGridView1_CellMouseEnter(ByVal sender As Object, _
                                         ByVal e As DataGridViewCellEventArgs) _
                                         Handles DataGridView1.CellMouseEnter
  If e.RowIndex = -1 And e.ColumnIndex > -1 Then
    MessageBox.Show("Over " & DataGridView1.Columns(e.ColumnIndex).HeaderText)
  End If
End Sub
于 2012-07-19T18:05:02.430 に答える
1

DataGridView.HitTest メソッドを見てください。

Private Sub dataGridView1_MouseEnter(ByVal sender as Object, ByVal e as EventArgs) Handles dataGridView1.MouseEnter
  Dim relativeMousePosition as Point = dataGridView1.PointToClient(Cursor.Position)
  Dim hit As DataGridView.HitTestInfo = dataGridView1.HitTest(relativeMousePosition.X, relativeMousePosition.Y)
  Console.WriteLine(hit.Type.ToString())
End Sub
于 2012-11-19T14:56:15.047 に答える