1c 8.3 и буфер обмена #784673


#0 by Alex unde
Привет. Задача следующая: Обрезать символы при вставке из буфера обмена :) При копировании данных из Excel методом Ctrl+C (ячейки) всегда скопированная строка содержит в конце символ переноса строки. Хочу при активации окна 1С обрабатывать буфер обмена и удалять конечный символ переноса строки и/или таб/пробел. Варианты которые пришли в голову: -Обработать форму поиска - не докопался до нее -Обработать Ctrl+V - без каких-то dll-ок думаю не получится (по крайней мере, у меня не получилось и обработать, и не перебить саму вставку из буфера в нужное место) -Обработать событие активации самой 1-ски. Может есть решение у кого-то или идеи - подскажите :) Спасибо!
#1 by LevelUP
может проще обрабатывать уже приОкончРедактирования в поле 1С?
#2 by Alex unde
Для примера, может быть поиск по номеру документа в форме списка (в одной из over дофига). То есть в Excel скопировали номер - в 1С нажали Ctrl+F и Ctrl+V. То есть Никакого "При окончании редактирования" думаю не получится сделать..
#3 by Alex unde
согласен даже dll-ки навешать, но только грамотные, потому как сам их писать не шарю :( Если есть проверенные - скиньте, пожалуйста, буду очень благодарен!
#4 by DrShad
первая же ссылка по большой букве Я вверху
#5 by Alex unde
это понятно, вставить то его куда?)
#6 by LevelUP
ну если в поиске то да, не получится. Можно простенькое приложение на любом известном вам языке, пусть себе висит в автозагрузке и режет.
#7 by TormozIT
Autohotkey поможет. Простенький скрипт, написанный на Autohotkey. Следит за изменениями буфера обмена и собирает текст, о чём выводит TrayTip. При нажатии Win+Ctrl+V и Win+Shift+Insert записывает в буфер обмена всё, что насобирал, «отправляет» активному приложению Ctrl+V или Shift+Insert в соответствии с тем, что было нажато, и выходит. #MaxThreadsPerHotkey 1 ;Mouse required to hook WinKey ClipboardType0=empty ClipboardType1=text ClipboardType2=non-text Exit #^v::     paste=^v #+Ins::     TrayTip, Paste, Capture buffer cleared OnClipboardChange: ;    MsgBox clipboard:`n`n%clipboard%     If ( A_EventInfo == 1 and ClipboardCaptureOn) { ;    ToolTip % "" ClipboardsCaptured . ": Clipboard changed`nType: " . ClipboardType%A_EventInfo% . "`nContents added: " . clipboard, return RemoveToolTip:     ToolTip return
#8 by Alex unde
Спасибо. Но я бы еще попросил, если есть идеи как без установки левого софта сделать??? максимум длл готов поставить(
#9 by TormozIT
Это невозможно при текущих возможностях платформы и известных мне планируемых.
#10 by Alex unde
Больше нет идеи? Думаю оптимально было бы перехватить активацию окна 1С. Пожалуйста!:(
#12 by Alex unde
Куда это вклеить?
#13 by MaxS
Это идея как в 1С получить буфер обмена. А куда вклеить - нужно думать. ))
#14 by Alex unde
буфер обработать не проблема, куча инфы по этому поводу. Проблема в инициации события обработки буфера
#15 by TormozIT
Не мучайся. Кроме врядли что то сделаешь малыми затратами.
#16 by Alex unde
это прискорбно :(
#17 by LevelUP
может обработчик ожидания с кодом по изменению строки в буфере. Только конфу тогда снимать с замка.
#18 by romix
Имхо нужно просить 1С чтобы отрезали конечный перевод строки при поиске по номеру, коду и так далее.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С