Копирование из ListBox в буфер обмена - VB
Формулировка задачи:
Доброго всем времени суток!Пожалуйста подскажите или ткните носом.Не могу разобраться с копированием содержимого List в буфер обмена.У меня имеется List и меню,в котором есть пункты Удаление и Отмена.Удаляться могут как одна строка,так и группа произвольных строк при отмене восстанавливаются прежние данные.Логично было бы все сделать в буфере обмена,но я так понимаю буфер это стек и я не могу вставить все строки вставляется только одна.В свойствах класса Clipboard есть только Set и Get методы и получить индексы я не могу.Кто знает пожалуйста подскажите.
PS Задачу эту я решил,но с использованием временного Listа,но хотелось бы через буфер обмена.Пока осваиваю азы.
Спасибо.
Решение задачи: «Копирование из ListBox в буфер обмена»
textual
Листинг программы
Option Explicit Private Sub Command1_Click() List1.AddItem Int(Rnd * 10000) 'что то добавляем в листбокс MyClipBoard List1 'записываеи в буфер End Sub Private Sub Command2_Click() 'отменить MyClipBoard List1, 1 End Sub Private Sub Command3_Click() 'повторить MyClipBoard List1, 2 End Sub Private Sub Command4_Click() If List1.ListCount <= 0 Then Exit Sub List1.RemoveItem (Int(Rnd * List1.ListCount)) 'удаляем случайную строку из листбокс MyClipBoard List1 'записываеи в буфер End Sub Private Sub MyClipBoard(L As Object, Optional ByVal AddUndoRedo As Integer) 'На 10 элементов Static A(1 To 10) As Variant, E() As String, n As Integer Dim m As Integer, i As Integer If L.ListCount < 1 Then Exit Sub Select Case AddUndoRedo Case 0 n = n + 1: ReDim Preserve E(L.ListCount - 1) For i = 0 To L.ListCount - 1: E(i) = L.List(i): Next i If n > 10 Then n = 10 For i = 1 To 9: A(i) = A(i + 1): Next i End If A(n) = E Case 1 If n > 1 Then n = n - 1: E = A(n): L.Clear For i = 0 To UBound(E): L.AddItem E(i): Next i End If Case 2 If n < 10 Then If (Not IsEmpty(A(n + 1))) Then n = n + 1: E = A(n): L.Clear For i = 0 To UBound(E): L.AddItem E(i): Next i End If: End If End Select End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д