OpenClipboard

如果一個應用程式調用OpenClipboard,HWND設定為NULL,EmptyClipboard設定剪貼簿所有者為NULL,這會導致SetClipboardData失敗。

基本介紹

  • 外文名:OpenClipboard
  • 頭檔案:windows.h
  • 庫檔案:user32.lib
  • DLL檔案名稱:user32.dll
VB,VC,介紹,示例,

VB

OpenClipboard
打開剪貼簿查看,並防止其他應用程式修改剪貼簿的內容.
VB聲明:
Declare Function OpenClipboard Lib "user32" (ByVal hWndNewOwner As Long) As Long
C/C++函式原形:
BOOL OpenClipboard(
__in HWND hWndNewOwner
);
參數
hWndNewOwne Long類型,與打開剪下板相關聯的視窗句柄。如果這個參數為NULL,打開剪貼簿與當前任務相關聯。
返回值
如果函式執行成功,返回非零值.
如果函式執行失敗,返回零,為了獲得更多的錯誤信息,調用GetLastError.
注:
如果另一個視窗已經打開的剪貼簿,OpenClipboard函式會失敗.每次成功調用OpenClipboard後都應有一次CloseClipboard調用.
由hWndNewOwner參數確定的視窗不會成為剪貼簿所有者,除非EmptyClipboard函式被調用。
需求:
客戶機作業系統最低需求:Windows XP
伺服器作業系統最低需求:Windows 2000 Server
頭檔案:windows.h
庫檔案:user32.lib
DLL檔案名稱:user32.dll

VC

介紹

類: CWnd
頭檔案:
afxwin.h
功能:打開剪貼簿。
語法:
BOOL OpenClipboard();
返回值:
如果通過CWnd打開了剪貼簿,則返回非零值。
如果其他應用程式或視窗已經打開了剪貼簿,則返回零。
說明:
在調用Windows的CloseClipboard函式之前,其他應用程式將不能修改剪貼簿的內容。
在調用Windows的EmptyClipboard函式之前,當前的CWnd對象將不會成為剪貼簿的擁有者。

示例

/*************************************************************************
演示函式原型:OpenClipboard();
程式功能說明:設定貼上板的文本數據。
************************************************************************/
//打開貼上板
if(!OpenClipboard())
//如果失敗則釋放記憶體局柄
GlobalFree(m_hMemory);
//清空貼上板
else if(!EmptyClipboard()||SetClipboardData(CF_TEXT,m_hMemory)==NULL)
{
//失敗時釋放記憶體句柄
GlobalFree(m_hMemory);
}
else
//關閉貼上板
CloseClipboard();

相關詞條

熱門詞條

聯絡我們