Форум: "Основная";
Текущий архив: 2003.11.03;
Скачать: [xml.tar.bz2];
ВнизДанные OleContainer Найти похожие ветки
← →
}{enon (2003-10-19 17:16) [0]Подскажите, пожалуйста, как можно копировать данные из OLE в TBitmap и обратно (OLE содержит рисунок).
Заранее спасибо.
← →
kavlad (2003-10-21 16:52) [1]Напиши свой Ole-контейнер:
type
TMyOleContainer = class(TOleContainer)
public
property Canvas;
end;
Теперь канва станет доступна для использования внешними средствами.
← →
REA (2003-10-21 17:07) [2]Из OLE Container в буфер обмена: Copy
Вставить в Bitmap например так:
procedure TForm1.Button1Click(Sender: TObject);
var
Bitmap : TBitmap;
begin
Bitmap := TBitMap.create;
try
Bitmap.LoadFromClipBoardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0);
Canvas.draw(0,0,Bitmap);
finally
Bitmap.free;
end;
end;
← →
}{enon (2003-10-22 19:30) [3]2 kavlad
Спасибо, попробую (кстати, извлечь данные можно и встроенным методом PaintTo)
2 REA
Я пробовал еще до того, как задать вопрос - не работает, т.к. ClipBoard не объявлен :(
← →
Sandman25 (2003-10-23 10:13) [4]>Я пробовал еще до того, как задать вопрос - не работает, т.к. ClipBoard не объявлен :(
uses Clipboard;
← →
Sandman25 (2003-10-23 10:14) [5]Вру.
uses Clipbrd;
← →
}{enon (2003-10-23 16:30) [6]2 Sandman25
ОК, а то я пробовал то, что в хелпе - QClipBoard или что-то в этом роде.
← →
}{enon (2003-10-23 17:11) [7]Блин! Уже как-то неудобно, но сообщение "Unsupported clipboard format" (в блоке try!) выше моего понимания. И главное не врет: Windows Clipboard также не распознает содержимое буфера обмена.
← →
REA (2003-10-23 17:16) [8]Не исключено, что именно форматы не совпадают. Приложение может помещать в Clipbord данные в разных форматах и есть вероятность, что Bitmap среди них нет.
← →
}{enon (2003-10-23 17:23) [9]Вот этого я понять и не могу. Если открыть объект и вручную его скопировать, то всё нормально, а если програмно - то не работает.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.11.03;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c