MSFlexGrid: Как удалить несколько строк? - VB

Узнай цену своей работы

Формулировка задачи:

Прошу прощения за возможно глупый вопрос. В гриде есть две строки, с одинаковым значением одного столбца. Строки идут подряд. Как сделать так, чтобы при удалении одной строки автоматом удалялась другая? Вне зависимости от того, находится она выше первой или ниже.

Решение задачи: «MSFlexGrid: Как удалить несколько строк?»

textual
Листинг программы
Private Sub MSFlexGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
    Dim intThisRow As Integer
    Dim intThatRow As Integer
    
    On Error GoTo MethodExit
    
    intThisRow = MSFlexGrid1.Row
    
    'Assume one fixed row!!!
    
    If MSFlexGrid1.Rows = 1 Then Exit Sub
    
    If intThisRow = MSFlexGrid1.Rows - 1 Then
    
        If MSFlexGrid1.TextMatrix(intThisRow, 1) = MSFlexGrid1.TextMatrix(intThisRow - 1, 1) Then
            intThatRow = intThisRow - 1
        End If
    Else
        If MSFlexGrid1.TextMatrix(intThisRow, 1) = MSFlexGrid1.TextMatrix(intThisRow + 1, 1) Then
            intThatRow = intThisRow + 1
        ElseIf MSFlexGrid1.TextMatrix(intThisRow, 1) = MSFlexGrid1.TextMatrix(intThisRow - 1, 1) Then
           intThatRow = intThisRow - 1
        End If
    End If
    
    If KeyCode = vbKeyDelete Then
        If intThatRow > 0 Then
            If intThatRow > intThisRow Then
                MSFlexGrid1.RemoveItem intThatRow
                MSFlexGrid1.RemoveItem intThisRow
            Else
                MSFlexGrid1.RemoveItem intThisRow
                MSFlexGrid1.RemoveItem intThatRow
            End If
        
        Else
            MSFlexGrid1.RemoveItem intThisRow
        End If
    End If
    
MethodExit:
    
    If Err.Number <> 0 Then
        If Err.Number = 30015 Then
            Err.Clear
            MSFlexGrid1.Rows = MSFlexGrid1.FixedRows
         Else
            MsgBox Err.Description
        End If
    
    End If
 
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.625 из 5
Похожие ответы