Перейти на главную страницу

ver. 06'2003

Intro

Кодинг

VB - работа с файлами 2

VB - работа с буфером обмена Windows

Computer

Настройка MS Outlook Express

Сказка о Windows, реестре и коварном юзере

Справочники

Типы данных VB 6.0

Users

Вопрос - Ответ

ё-Mail

Trash

Реклама

Словарь компьютерного жаргона

Полезные программы

Хемарой

Работа с буфером обмена

 

…Многие приложения, относящиеся к категории редакторов, активно используют буфер обмена Windows. В данной статье я расскажу о том, как при помощи Visual Basic(а) можно использовать буфер обмена в ваших приложениях.

 

Запись данных

 

Существует два типа данных, которые можно записать в буфер обмена Windows - это текстовые и графические.

 

Для записи текстовых данных используется функция SetText объекта Clipboard:

 

Clipboard.SetText "Данные", | vbCFText | vbCFRTF | vbCFLink |

 

, где

vbCFText - неформатированный текст;

vbCFText - форматированный RTF-текст;

vbCFLink - текст в формате DDE;

 

Например, чтобы записать в буфер обмена текст "VB 6.0 - хороший журнал", код будет иметь следующий вид:

 

Clipboard.SetText " VB 6.0 - хороший журнал", vbCFText

 

, а для записи форматированного текста "VB 6.0 - хороший журнал":

 

Clipboard.SetText "VB 6.0 - хороший журнал", vbCFRTF

 

Для записи графических данных используется функция SetData:

 

Clipboard.SetData Графический_объект, | vbCFBitmap | vbCFMetafile | vbCFDIB | vbCFPalette |

 

, где

vbCFBitmap - картинка в формате BMP;

vbCFMetafile - картинка в формате Windows-метафайлов;

vbCFDIB - формат DIB;

vbCFPalette - цветовая палитра;

 

Например, чтобы поместить данные из Picture1 (PictureBox) в буфер обмена, код будет таким:

 

Clipboard.SetData Picture1.Picture, vbCFBitmap

 

Чтение данных

 

Для чтения текстовых данных используется функция GetText, а для графических, соответственно, GetData.

 

Например, код сообщения показывающего текстовые данных, находящиеся в буфере обмена, будет иметь следующий вид:

 

MsgBox Clipboard.GetText

 

Примерно так же будет выглядеть код загрузки графических данных из буфера в Picture1 (PictureBox):

 

Picture1.Picture = Clipboard.GetData

 

Формат данных

 

Для того чтобы узнать какой формат данных находится в буфере, используется метод Clipboard.GetFormat

 

Например, если буфер содержит данные в тестовом формате, то ниже написанный код возвратит значение True:

 

MsgBox Clipboard.GetFormat(vbCFText)

 

Очистка

 

Для очистки буфера используется метод Clipboard.Clear

 

Автор статьи: Немиро Алексей

Production by Underground Workshop company || Copyright © Nemiro Alexey Spring-Summer'2003