1,复制 void CDynMenuDoc::OnEditCopy() { CString source=m_strClipborad;//要复制的内容 //文本内容保存在source变量中 if( OpenClipboard(NULL) )//打开剪切板 { HGLOBAL clipbuffer;//内存句柄 char * buffer; EmptyClipboard();//函数清空剪切板并释放剪切板内数据的句柄 clipbuffer = GlobalAlloc(GMEM_DDESHARE, source.GetLength()+1);//分配内存 buffer = (char*)GlobalLock(clipbuffer);//指定一个内存块并返回内存块的首地址 strcpy(buffer, LPCSTR(source)); GlobalUnlock(clipbuffer); SetClipboardData(CF_TEXT,clipbuffer); CloseClipboard(); } } 2,粘贴 char * buffer = NULL; //打开剪贴板 if ( OpenClipboard(NULL) ) { HANDLE hData = GetClipboardData(CF_TEXT); char * buffer = (char*)GlobalLock(hData); fromClipboard = buffer;//用需要的方式显示粘贴的内容 GlobalUnlock(hData); CloseClipboard(); }
VC++中的复制粘贴实现
最新推荐文章于 2024-03-01 14:47:17 发布