Страница 1 из 1
Копировать картинку в ClipBoard ...
Добавлено: 25 Февраль 2012, 17:26
Игорь Столяров
Привет всем !
Простая задача. Eсть окно, в нем картинка (IMAGE). Нужно скопировать ее в буфер обмена Windows ...
Вроде бы тема поднималась, но решения в форуме не нашел.
Можно ли это сделать ? Желательно "малой кровью" (без использования дополнительных библиотек).
Заранее спасибо ...
Re: Копировать картинку в ClipBoard ...
Добавлено: 25 Февраль 2012, 18:26
gopstop2007
Как вариант на
http://www.clarionfreeimage.com там в примерах ClipboardtoBlob и ClipboardToFile
и еще у Юры попросите у него вроде была простенькая библиотека по разборке Буфера обмена - cbclass.zip
Re: Копировать картинку в ClipBoard ...
Добавлено: 27 Февраль 2012, 12:24
kreator
Из Help'а о prop:ClipBits
Property of an IMAGE control that allows bitmap images to be moved into (but not out of) the Windows clipboard when set to one (1). Only .BMP, .PCX, or .GIF image types can be stored as a bitmap (.BMP) image in the Clipboard.
Example:
WinView WINDOW('View'),AT(0,0,320,200),MDI,MAX,HVSCROLL
IMAGE(),AT(0,0,,),USE(?Image)
BUTTON('Save Picture'),AT(80,180,60,20),USE(?SavePic)
BUTTON('New Picture'),AT(160,180,60,20),USE(?NewPic)
END
FileName STRING(64) !Filename variable
CODE
OPEN(WinView)
DISABLE(?LastPic)
IF NOT FILEDIALOG('Choose File to View',FileName,'BitMap|*.BMP|PCX|*.PCX',0)
RETURN !Return if no file chosen
END
?Image{PROP:Text} = FileName
ACCEPT
CASE ACCEPTED()
OF ?NewPic
IF NOT FILEDIALOG('Choose File to View',FileName,'BitMap|*.BMP|PCX|*.PCX',0)
BREAK !Return if no file chosen
END
?Image{PROP:Text} = FileName
OF ?SavePic
?Image{PROP:ClipBits} = 1 !Put image into Clipboard
ENABLE(?LastPic) ! activate Last Picture button
END
END
Re: Копировать картинку в ClipBoard ...
Добавлено: 28 Февраль 2012, 22:18
Игорь Столяров
Спасибо ! Все работает. Как говорится: век живи - век учись.

Не все форматы файлов копируются, но это уже совсем другая история ...