2009-08-21 3 views
0

VB6: Я могу писать в буфер обмена с помощью Clipboard.SetText. Но я хочу писать в шагах. Как первый String1. Затем добавьте String2 после String1. Есть ли способ сделать это?Напишите в буфер обмена

+0

Есть ли способ записи в буфер обмена, не возвращая его в строку? – Pradeep

ответ

0

Вы можете просто написать свой первый бит, а затем прочитать буфер обмена и добавить к тому, что вы читаете, и снова установить текст ... Единственная проблема заключается в том, что какое-то другое приложение может писать в буфер обмена в течение этого времени.

3

Следите за тем, что вы написали в буфер обмена с другой строкой, которую я назову ClipboardString.

Вы можете установить ClipboardString равным String1, а затем установить в буфер обмена ClipboardString. Затем добавьте String2 в ClipboardString и установите буфер ClipboardString. И так далее ...

Выполнение этого способа устранит любые возможные проблемы с другими программами, перезаписывающими буфер обмена, прежде чем вы закончите добавлять свои строки.

4

Rob's answer - хорошо. Мой дополнительный совет - всегда использовать Clipboard.Clear перед использованием Clipboard.SetText. В противном случае пользователь может не вставить свой текст.

E.g. если пользователь сначала копирует «текст один» в Word, затем использует ваше приложение для копирования «текста два», а затем использует «Вставить в Word»: он вставляет «текст один». Это происходит потому, что clipboard still contains отформатированная строка «text one» из Word, и Word использует этот форматированный текст, предпочитая ваш неформатированный текст.