|
||||||||
|
Приложение и среда его выполнения. Объект Clipboard
TClipboard = class(TPersistent) Объект TClipboard представляет программисту интерфейс с буфером обмена (Clipboard) Windows. При включении в проект модуля CLIPBRD этот глобальный объект создается автоматически и доступен приложению в течение всего цикла. Методы открытия и закрытия буфера обмена
вызываются во всех остальных методах TClipboard, поэтому программист редко нуждается в обращении к ним. В объекте ведется счетчик числа обращений к этим функциям, так что соответствующие функции API Windows вызываются только при первом открытии и последнем закрытии. Очистка содержимого буфера (для всех форматов) производится вызовом метода:
О доступных форматах можно узнать, пользуясь следующими свойствами и методами:
? содержит число форматов в буфере на данный момент;
? содержит их полный список. Функция
проверяет, содержится ли в данный момент формат Format. Волею разработчиков различаются способы обмена графической и текстовой информацией через буфер обмена. Рассмотрим их независимо. Через вызов метода
в буфер обмена помещаются данные классов TGraphic, точнее, его потомков ? классов TBitmap (формат CFJ3ITMAP) и TMetafile (CF_METAFILEPICT). Данные класса TIcon не имеют своего формата и с TClipboard несовместимы. Допустимо и обратное: в TClipboard есть специальные (скрытые) методы для присваивания содержимого объектам классов TPicture, TBitmap и TMetafile. Допустимы выражения вида:
Для работы с текстом предназначены методы:
? читает текст из буфера обмена в буфер Buffer, длина которого ограничена значением BufSize. Функция возвращает истинную длину прочитанного текста;
? помещает текст из Buffer в буфер обмена в формате CF_TEXT; Свойство
соответствует содержимому буфера обмена в текстовом формате CF_TEXT (приведенному к типу string). При отсутствии там данных этого формата возвращается пустая строка. Методы
соответственно читают и пишут данные в буфер в заданном формате Format. При чтении возвращается дескриптор находящихся в буфере данных (или 0 при отсутствии). Для дальнейшего использования эти данные должны быть скопированы. При записи данные, передаваемые в параметре Value, в дальнейшем должны быть уничтожены системой (а не программой пользователя). Два метода предназначены для обмена компонентами через буфер обмена (в специально зарегистрированном формате CF_COMPONENT):
Они используются составными частями среды Delphi.
Для комментария : kadan@grsu.grodno.by | |||||||||||
За содержание страницы отвечает Гончарова М.Н. © Кафедра СПиКБ, 2002-2017 |