OpenClipboard声明如下:
WINUSERAPI
BOOL
WINAPI
OpenClipboard(
__in_opt HWND hWndNewOwner);
hWndNewOwner是前贴板所属于窗口
例子如下:
#001 //拷贝数据到剪贴板
#002 //蔡军生 2007/12/09 qq:9073204 深圳
#003 void TestClipBoard(void)
#004 {
#005 //打开剪贴板并清空
#006 (OpenClipboard(m_hWnd) &&
#007 EmptyClipboard)
#008 {
#009 //
#010 HGLOBAL hMem;
#011 std::w strText(_T("拷贝数据到剪贴板"));
#012
#013 //分配全局内存
#014 hMem = GlobalAlloc(GMEM_MOVEABLE,
#015 (strText.length + 1) * (TCHAR));
#016 (hMem NULL)
#017 {
#018 CloseClipboard;
#019 ;
#020 }
#021
#022 //拷贝数据到剪贴板内存
#023 LPTSTR lpStr = (LPTSTR)GlobalLock(hMem);
#024 memcpy(lpStr, strText.c_str,
#025 strText.length * (TCHAR));
#026 lpStr[strText.length] = (TCHAR) 0;
#027 GlobalUnlock(hMem);
#028
#029 //设置数据到剪贴板
#030 SetClipboardData(CF_UNICODETEXT, hMem);
#031
#032 //关闭剪贴板
#033 CloseClipboard;
#034 }
#035 }
#036
最新评论