以下代碼用以狀態條接收OLE服務器的信息
procedure TOLEObjectForm
Msg: String)
begin
OLEFrameForm
end;
運行狀態時進行對象鏈接與插入也要用到插入對話框
function InsertOleObjectDlg(Form: TForm; HelpContext: THelpContext;
var PInitInfo: Pointer)
其中參數Form是擁有插入對話框的窗體
參數Helplontext為插入對象對話框定義在線幫助
參數PInitInfo是一個無類型指針
當用戶選擇OK 按鈕關閉插入對象對話框
為了使OLE包容器部件包含OLE對象
調用InsertOLEObjetDlg函數可在其參數PInitInfo獲得關於OLE對象初始化的信息時
初始化完成後
例程中初始OLE對象的代碼如下
procedure TOLEObjectForm
begin
OLEContainer
ReleaseOLEInitInfo(Info)
end;
該過程先將初始化指針傳給OLE包容器部件的PInitInfo屬性
當用戶單擊例程中的
procedure TOLEObjectForm
var
Info: Pointer;
begin
if InsertOLEObjectDlg(OLEFrameForm
InitializeOLEObject(Info)
end;
如果OLE對象是OLE
如果OLE
標鍵即可
另一種凍結對象的方法是把OLE包容器部件的Active屬性設置成假值
procedure TOLEObjectForm
begin
OLEContainer
end;
一些OLE服務器允許用戶把OLE對象復制到剪貼板
把OLE對象粘貼到OLE包容器部件
PasteSpecialDlg 函數聲明如下
function PasteSpecialDlg(Form :TForm;Const First:arrang; HelpConcert: THelpCOntext;var Forrmat : Word; var Hardle : THanlle var PInitInfo :Point ) : Boolean;
PasteSpecialDlg參數定義如下
參數Form是擁有粘貼對話框的窗體
參數Format是注冊對象格式的數組
BOLEFormat 聲明如下
BOLEFormat: Record
fmtID : Word;
fmtName : array[
fmtResultName : array[
fmtMediun : BOleMedium;
fmIsLInkble : Bool;
end;
fmtID是對象的剪貼板格式ID號
[
From:http://tw.wingwit.com/Article/program/Delphi/201311/25221.html