Как очистить буфер обмена в Access 2003
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Как очистить буфер обмена в Access 2003 Expand / Collapse
Автор
Сообщение
24.04.2007 14:17
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 22.02.2008 15:20
Сообщ.: 44, Visits: 108
Вот тут встал еще один вопрос:

Мне при нажатии на кнопку нужно очищать буфер обмена. Смотрю, в книгах ентого нет. :(

Спасобо за помощь. Если будет фрагмент кода очень хорошо....
Сообщ. #912761
24.04.2007 16:08


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 29.10.2007 14:45
Сообщ.: 1 833, Visits: 16 863
CLipboard.clear, по идее.
Сообщ. #912772
24.04.2007 17:57
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 22.02.2008 15:20
Сообщ.: 44, Visits: 108
Не.... Кричит: Объект не найден. Может надо какую-то библиотеку подключить? Или правильно строку написать. Подскажите плиз. Спасибо.
Сообщ. #912779
24.04.2007 22:57
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme 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
Сообщ. #912784
25.04.2007 13:12
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 22.02.2008 15:20
Сообщ.: 44, Visits: 108
Вставил этот код модуль, но как ее вызывать? Пробую через Application.run..., не получается.. Вот есть просто форма и на ней кнопка "очистить". Вот подскажите как из кнопки вызвать? Спасибо.
Сообщ. #912797
25.04.2007 14:21
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 07.03.2008 19:04
Сообщ.: 328, Visits: 1 857
В процедуру обработки события «Нажатие кнопки» (Click) кнопки поместите, например, такой код:
If Not ClipboardEmpty() Then MsgBox "Буфер обмена не очищен"
Сообщ. #912802
25.04.2007 14:45
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 22.02.2008 15:20
Сообщ.: 44, Visits: 108
Это просто проверка состояния буфера. А мне надо команду его очистки. Вот как просто это реализовать.....?
Сообщ. #912803
25.04.2007 15:29
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 07.03.2008 19:04
Сообщ.: 328, Visits: 1 857
Это и есть функция очистки буфера. В некоторых случаях, например буфер открыт другим окном, очистка не выполниться, о чем и говорим в MsgBox. Если Вас не устраивает сообщение, то можете вместо "Буфер обмена не очищен" записать "Буфер обмена не удалось очистить"
А Вы проверили работоспособность этой функции?
Сообщ. #912805
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl

Время GMT +3:00, Сейчас 8:13