C++編程語言的應用方式靈活,功能強大,其中有很多功能的實現都可以通過多種方法來輕松的實現。我們在這裡會為大家詳細介紹一下C++剪切板的一些常用操作技巧,希望能方便大家對此方面的理解。
C++剪切板操作之復制數據至剪切板
- BOOL CopyToClipboard(const char* pszData, const int nDataLen)
- {
- if(::OpenClipboard(NULL))
- {
- ::EmptyClipboard();
- HGLOBAL clipbuffer;
- char *buffer;
- clipbuffer = ::GlobalAlloc(GMEM_DDESHARE, nDataLen+1);
- buffer = (char *)::GlobalLock(clipbuffer);
- strcpy(buffer, pszData);
- ::GlobalUnlock(clipbuffer);
- ::SetClipboardData(CF_TEXT, clipbuffer);
- ::CloseClipboard();
- return TRUE;
- }
- return FALSE;
- }
C++剪切板操作之從剪切板中取得數據
- BOOL GetTextFromClipboard()
- {
- if(::OpenClipboard(NULL))
- {
- //獲得剪貼板數據
- HGLOBAL hMem = GetClipboardData(CF_TEXT);
- if(NULL != hMem)
- {
- char* lpStr = (char*)::GlobalLock(hMem);
- if(NULL != lpStr)
- {
- //MessageBox(0, lpStr, "", 0);
- ::GlobalUnlock(hMem);
- }
- }
- ::CloseClipboard();
- return TRUE;
- }
- return FALSE;
- }
C++剪切板操作之模擬Ctrl+V
- keybd_event(VK_CONTROL,0,0,0);
- keybd_event('V',0,0,0);
- keybd_event('V',0,KEYEVENTF_KEYUP,0);
- keybd_event(VK_CONTROL,0,KEYEVENTF_KEYUP,0);