Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VSFlexGrid - Удаление нескольких записей / 2 сообщений из 2, страница 1 из 1
27.09.2005, 16:12:05
    #33291312
SunnyVa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VSFlexGrid - Удаление нескольких записей
Всем хорошего дня!
Столкнулась с такой проблемой: Данные в VSFlexGrid подгружаются через DataSource, соответсвенно удалить записи через команду RemoveItem я не могу (или я не права?)
Метода Delete к сожалению у данной компоненты нет, поэтому делаю следующим образом: ловлю событие KeyUp, в нем анализирую какая была нажата клавиша, соответсвенно если была нажата клавиша Del(Delete), то все что я могу узнать это номера строк, которые были выделены для удаления
Код: plaintext
1.
2.
3.
For i =  0  To fg.SelectedRows -  1 
            Debug.Print "Строка "; fg.SelectedRow(i); " выделена для удаления"
Next
Посоветуйте как мне организивать удаление, ведь удалять я должна из самого источника данных
Заранее спасибо
...
Рейтинг: 0 / 0
27.09.2005, 17:24:32
    #33291580
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VSFlexGrid - Удаление нескольких записей
Я например делаю так
Выделяю маусом диапазон который хочу удалить,
ловлю нажатие мауса и записываю в 2 техтбоха

1- txtP.Text

Код: plaintext
1.
2.
Private Sub VSGed_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtP.Text = VSGed.RowSel
End Sub

2- txtS.Text

Код: plaintext
1.
2.
Private Sub VSGed_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtS.Text = VSGed.RowSel
End Sub

Потом выполняю само действие удаления !!!


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
Private Sub cmdCh_Click()
Dim Mstring As String
Dim Info As String
Dim n As Integer

On Error GoTo Error

    txtReturn.Text = "KillSel"
    n = VSGed.RowSel
    Mstring = "You have chosen for removal from a line  " & Val(txtP.Text) & " up to a line " & Val(txtS.Text) & " !!!"
    sMsg = Mstring
    nButtons = vbYesNo + vbQuestion
    nResult = MsgBox(sMsg, nButtons, "Kill the chosen line ???")
    If nResult = vbNo Then Exit Sub
    If nResult = vbYes Then
   
   For n = Val(txtP.Text) To Val(txtS.Text) ' Начало и конец диапазона
   'Здесь код ВАШЕГО удаления !!!
   ' Mstring = "k " & Piece(VSGed.Cell(flexcpText, n, 0), "=", 1)
   ' m.Xecute Mstring
   VSGed.Cell(flexcpText, n,  0 ) = ""
   VSGed.Cell(flexcpText, n,  1 ) = ""
            Next n
     End If
 
Exit Sub
Error:
MsgBox ("Error " & Err.Description)

End Sub
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VSFlexGrid - Удаление нескольких записей / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]