vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Zelle unter Cursor bestimmen 
Autor: Maas
Datum: 22.05.09 10:23

Wo kommt denn auf einmal das CellMouseLeave-Event her? Das brauchst du doch gar nicht.

Alles ins CellMouseEnter:
        Dim x1, x2, y1, y2 As Integer
        Dim puffer As Integer = 7
 
        If e.ColumnIndex - puffer >= 0 Then : x1 = e.ColumnIndex - puffer
        Else : x1 = 0
        End If
 
        If e.ColumnIndex + puffer <= dgv.ColumnCount - 1 Then : x2 = _
          e.ColumnIndex + puffer
        Else : x2 = dgv.ColumnCount - 1
        End If
 
        If e.RowIndex - puffer >= 0 Then : y1 = e.RowIndex - puffer
        Else : y1 = 0
        End If
 
        If e.RowIndex + puffer <= dgv.RowCount - 1 Then : y2 = e.RowIndex + _
          puffer
        Else : y2 = dgv.RowCount - 1
        End If
 
 
        If Not e.ColumnIndex = -1 And Not e.RowIndex = -1 Then
 
            For x As Integer = x1 To x2
                For y As Integer = y1 To y2
                    If x >= e.ColumnIndex - 1 And x <= e.ColumnIndex + 1 And _
                      y >= e.RowIndex - 1 And y <= e.RowIndex + 1 Then
                        dgv.Rows(y).Cells(x).Style.BackColor = Color.Black
                    Else
                        dgv.Rows(y).Cells(x).Style.BackColor = Color.White
                    End If
                Next
            Next
            dgv.Rows(e.RowIndex).Cells(e.ColumnIndex).Style.BackColor = _
              Color.White
 
        End If
Theoretisch müsste der puffer nur 2 sein, aber dadurch, dass bei schnellen Mausbewegungen manche Zellen das Event nicht auslösen, kann es zu unschönen Formationen kommen. Ich habe festgestellt, dass bei einem Wert von 7 selbst bei schnellen Bewegungen der puffer das Problem ausgleichen konnte.
Bei mir funkioniert es ohne Probleme.

Maas
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Zelle unter Cursor bestimmen1.724danieljena10.05.09 14:31
Re: Zelle unter Cursor bestimmen1.238Maas10.05.09 14:45
Re: Zelle unter Cursor bestimmen1.361danieljena10.05.09 15:36
Re: Zelle unter Cursor bestimmen1.236Maas10.05.09 16:22
Re: Zelle unter Cursor bestimmen1.298danieljena10.05.09 16:37
Re: Zelle unter Cursor bestimmen1.229Maas10.05.09 19:21
Re: Zelle unter Cursor bestimmen1.276danieljena21.05.09 22:11
Re: Zelle unter Cursor bestimmen1.222danieljena22.05.09 08:32
Re: Zelle unter Cursor bestimmen1.219Maas22.05.09 10:23
Re: Zelle unter Cursor bestimmen1.270danieljena22.05.09 12:20
Re: Zelle unter Cursor bestimmen1.226Maas22.05.09 12:54
Re: Zelle unter Cursor bestimmen1.203danieljena22.05.09 16:26
Re: Zelle unter Cursor bestimmen1.243keco22.05.09 16:31

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel