1с и буфер обмена

  • Автор темы Alexis
  • Дата начала
A

Alexis

#1
Доброго времени суток!
Есть одна интересная задача - в обработке для 1С 8.1 надо написать процедуру, которая бы при двойном щелчке по надписи в окне копировало бы текст надписи в буфер обмена. Эта процедура должна работать с минимальными правами. Я попробовал вот это:

Процедура ВставитьТекстВБуферОбмена(СодержимоеВБуферОбмена) Экспорт
#Если Клиент Тогда
Если (ТипЗнч(СодержимоеВБуферОбмена) = Тип("Строка")) И (СокрЛП(СодержимоеВБуферОбмена) <> "") Тогда
Объект = Новый COMОбъект("htmlfile");
Объект.ParentWindow.ClipboardData.Setdata("Text", СодержимоеВБуферОбмена);
КонецЕсли;
#КонецЕсли
КонецПроцедуры

Почему-то эта процедура срабатывает два-три раза, а потом начинает выдавать ошибку. после выхода и повторного входа в обработку проблема исчезает, и снова появляется через несколько срабатываний. Как это исправить?
 

vitfil

IT-интегратор
02.04.2004
2 062
0
#2
Для начала расскажите, что интересного в этой задачке? После - потрудитесь сообщить, какая именно ошибка у вас возникает.
 
A

Alexis

#3
Ошибка такая:

{Форма.Форма(4)}: Метод объекта не обнаружен (Setdata)
Объект.ParentWindow.ClipboardData.Setdata("Text", Текст);
 

Allexei

Well-known member
02.05.2008
322
1
#4
А интересного в этой задачке то что можно создать "супер загрузку из ексель". Копируем в буфер обмена таблицу из екселя в 1с получаем ее и делаем разбор полей. На все про все одна кнопка :) Мечта любого пользователя.
 

Дайнеко

Well-known member
19.11.2009
951
0
#5
* А не может спустя время буфер закакаться чем-то нетекстовым?
* А что если его очищать после использования?