Rubrik: Controls · MSFlexGrid/DataGrid | VB-Versionen: VB4, VB5, VB6 | 23.03.06 |
FlexGrid autom. sortieren Mit einfachen Mitteln den Inhalt eines FlexGrid beim Klick auf die Spaltebezeichnung sortieren. | ||
Autor: Andre Ehle | Bewertung: | Views: 23.216 |
ohne Homepage | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
In diesem Tipp zeige ich Ihnen wie sich mit VB-Boardmitteln der Inhalt eines FlexGrid per Mausklick sortieren lässt.
Zum Speichern der letzten sortierten Spalte dient die globale Variabele "LastSortCol". Die Tag-Eigenschaft des FlexGrid dient zur Speicherung der letzten Sortierreihenfolge (absteigend oder aufsteigend).
Fügen Sie den folgenden Code der Form mit dem FlexGrid hinzu:
' globale Variabele definieren Dim LastSortCol As Integer Private Sub MSFlexGrid1_Click() With Me.MSFlexGrid1 .Redraw = False If .MouseRow = 0 And .MouseCol > .FixedCols - 1 Then .Col = .MouseCol If LastSortCol <> .Col Then .Tag = 0 If .Tag = 0 Or .Tag = 6 Then .Sort = 5 .Tag = 5 LastSortCol = .Col Else .Sort = 6 .Tag = 6 LastSortCol = .Col End If .Col = 0 .Row = 0 End If .Redraw = True End With End Sub
Ab sofort wird der Inhalt des FlexGrid-Controls beim Klick auf einen Spaltenbezeichner auf- bzw. absteigend sortiert.