龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

C++剪切板常用应用技巧分享

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
C++ 编程语言的应用方式灵活,功能强大,其中有很多功能的实现都可以通过多种方法来轻松的实现。我们在这里会为大家详细介绍一下C++剪切板的一些常用操作技巧,希望能方便大家对

C++编程语言的应用方式灵活,功能强大,其中有很多功能的实现都可以通过多种方法来轻松的实现。我们在这里会为大家详细介绍一下C++剪切板的一些常用操作技巧,希望能方便大家对此方面的理解。

C++剪切板操作之复制数据至剪切板

  1. BOOL CopyToClipboard(const char* pszData, const int nDataLen)  
  2. {  
  3. if(::OpenClipboard(NULL))  
  4. {  
  5. ::EmptyClipboard();  
  6. HGLOBAL clipbuffer;  
  7. char *buffer;  
  8. clipbuffer = ::GlobalAlloc(GMEM_DDESHARE, nDataLen+1);  
  9. buffer = (char *)::GlobalLock(clipbuffer);  
  10. strcpy(buffer, pszData);  
  11. ::GlobalUnlock(clipbuffer);  
  12. ::SetClipboardData(CF_TEXT, clipbuffer);  
  13. ::CloseClipboard();  
  14. return TRUE;  
  15. }  
  16. return FALSE;  

C++剪切板操作之从剪切板中取得数据

  1. BOOL GetTextFromClipboard()  
  2. {  
  3. if(::OpenClipboard(NULL))  
  4. {  
  5. //获得剪贴板数据  
  6. HGLOBAL hMem = GetClipboardData(CF_TEXT);  
  7. if(NULL != hMem)  
  8. {  
  9. char* lpStr = (char*)::GlobalLock(hMem);   
  10. if(NULL != lpStr)  
  11. {  
  12. //MessageBox(0, lpStr, "", 0);  
  13. ::GlobalUnlock(hMem);  
  14. }  
  15. }  
  16. ::CloseClipboard();  
  17. return TRUE;  
  18. }  
  19. return FALSE;  

C++剪切板操作之模拟Ctrl+V

  1. keybd_event(VK_CONTROL,0,0,0);   
  2. keybd_event('V',0,0,0);   
  3. keybd_event('V',0,KEYEVENTF_KEYUP,0);   
  4. keybd_event(VK_CONTROL,0,KEYEVENTF_KEYUP,0);  
精彩图集

赞助商链接