|
|
|
Forum Member
      
участник
Last Login: 22.02.2008 15:20
Сообщ.: 44,
Visits: 108
|
|
Вот тут встал еще один вопрос:
Мне при нажатии на кнопку нужно очищать буфер обмена. Смотрю, в книгах ентого нет. :(
Спасобо за помощь. Если будет фрагмент кода очень хорошо....
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 29.10.2007 14:45
Сообщ.: 1 833,
Visits: 16 863
|
|
| CLipboard.clear, по идее.
|
|
|
|
|
Forum Member
      
участник
Last Login: 22.02.2008 15:20
Сообщ.: 44,
Visits: 108
|
|
| Не.... Кричит: Объект не найден. Может надо какую-то библиотеку подключить? Или правильно строку написать. Подскажите плиз. Спасибо.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 07.03.2008 19:04
Сообщ.: 328,
Visits: 1 857
|
|
Мне кажется, что без API функций здесь не обойтись. Поместите все нижерасположенное в стандартный модуль и вызывайте, при необходимости, функцию ClipboardEmpty.
Public Declare Function OpenClipboard Lib "user32" (ByVal hWnd As Long) As Long
Public Declare Function EmptyClipboard Lib "user32" () As Long
Public Declare Function CloseClipboard Lib "user32" () As Long
' Пользовательская функция
Public Function ClipboardEmpty() As Boolean
'Возвращает True - буфер очищен, False - нет.
Dim l As Long, i As Long
l = OpenClipboard(0&)
If l <> 0 Then
l = EmptyClipboard()
i = CloseClipboard()
End If
ClipboardEmpty = (l <> 0)
End Function
|
|
|
|
|
Forum Member
      
участник
Last Login: 22.02.2008 15:20
Сообщ.: 44,
Visits: 108
|
|
| Вставил этот код модуль, но как ее вызывать? Пробую через Application.run..., не получается.. Вот есть просто форма и на ней кнопка "очистить". Вот подскажите как из кнопки вызвать? Спасибо.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 07.03.2008 19:04
Сообщ.: 328,
Visits: 1 857
|
|
В процедуру обработки события «Нажатие кнопки» (Click) кнопки поместите, например, такой код:
If Not ClipboardEmpty() Then MsgBox "Буфер обмена не очищен"
|
|
|
|
|
Forum Member
      
участник
Last Login: 22.02.2008 15:20
Сообщ.: 44,
Visits: 108
|
|
| Это просто проверка состояния буфера. А мне надо команду его очистки. Вот как просто это реализовать.....?
|
|
|
|
|
Supreme Being
      
участник
Last Login: 07.03.2008 19:04
Сообщ.: 328,
Visits: 1 857
|
|
Это и есть функция очистки буфера. В некоторых случаях, например буфер открыт другим окном, очистка не выполниться, о чем и говорим в MsgBox. Если Вас не устраивает сообщение, то можете вместо "Буфер обмена не очищен" записать "Буфер обмена не удалось очистить"
А Вы проверили работоспособность этой функции?
|
|
|
|