Работа с буфером обмена (1Cv8)
Содержание
Задача
Нужно поместить строку в буфер обмена и/или извлечь из него.
Использование поля html-документа
Источник: http://infostart.ru/public/16800/
//поместить в буфер
ЭлементыФормы.Добавить(Тип("ПолеHTMLДокумента"), "ПолеHTMLДокумента", Ложь);
Окно = ЭлементыФормы.ПолеHTMLДокумента.Документ.ParentWindow;
Окно.ClipboardData.SetData("Text", ТекстПисьма);
ЭлементыФормы.Удалить(ЭлементыФормы.Индекс(ЭлементыФормы.Найти("ПолеHTMLДокумента")));
//вставить из буфера
ЭлементыФормы.Добавить(Тип("ПолеHTMLДокумента"), "ПолеHTMLДокумента", Ложь);
Окно = ЭлементыФормы.ПолеHTMLДокумента.Документ.ParentWindow;
СодержимоеБуфера = Окно.ClipboardData.GetData("Text");
ЭлементыФормы.Удалить(ЭлементыФормы.Индекс(ЭлементыФормы.Найти("ПолеHTMLДокумента")));
ТекстПисьма = ТекстПисьма + СодержимоеБуфера;
Использование объекта InternetExplorer.Application
Источник: http://infostart.ru/public/63694/
my_obj = Новый COMОбъект("InternetExplorer.Application");
my_obj.Navigate("about:blank");
my_text = my_obj.Document.ParentWindow.ClipboardData.GetData("text");
my_obj.Quit();
Кроме текста можно еще использовать данные типа:
- "URL" Формат URI
- "File" Файловый формат
- "HTML" Формат HTML
- "Image" Формат графического образа
Проблемы:
- при вставке в буфер обмена InternetExplorer может требовать подтверждения, в зависимости от настроек
Использование htmlfile
Работает только на чтение
Set oHtml = CreateObject("htmlfile")
sClipText = oHtml.ParentWindow.ClipboardData.GetData("text")
WScript.Echo sClipText