Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.03;
Скачать: CL | DM;

Вниз

Данные 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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.025 c
1-8509
Term
2003-10-24 17:44
2003.11.03
В чём ошибка???


1-8377
Master
2003-10-23 01:08
2003.11.03
Как определить букву СD-ROMa?


1-8436
Vivk
2003-10-21 19:13
2003.11.03
Редактирование записей в StringGrid


1-8384
antonioxxx
2003-10-21 16:27
2003.11.03
EAccessViolation Error!!! :(


1-8536
Raduga
2003-10-23 08:36
2003.11.03
Сохранение и загрузка свойств компонента, содержащего другие объе