您的位置:首页 > 编程语言 > Delphi

delphi 控件 TEmbeddedWB 实现超级拖拽 (super Drag&Drop OR inline Drag&Drop)

2008-03-11 17:03 791 查看
//处理超级拖拽
function TForm1.DropEvent(const dataObj: IDataObject;
grfKeyState: Integer; pt: TPoint; var dwEffect: Integer): HRESULT;
var
aFmtEtc : TFORMATETC;
aStgMed : TSTGMEDIUM;
pData : PChar;
begin
if (dataObj = nil) then
raise Exception.Create('IDataObject-Zeiger Error !');
with aFmtEtc do
begin
cfFormat := CF_TEXT;
ptd := nil;
dwAspect := DVASPECT_CONTENT;
lindex := -1;
tymed := TYMED_HGLOBAL;
end;
OleCheck(dataObj.GetData(aFmtEtc, aStgMed));
try
pData := GlobalLock(aStgMed.hGlobal);
// Text pData = 拖拽的URL
//Memo1.Text := pData;
CreateNewTabBrowser( strPas(pData)); //打开一个新的标签
finally
GlobalUnlock(aStgMed.hGlobal);
ReleaseStgMedium(aStgMed);
end;
Result := S_OK;
end;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: