C++剪切板常用應(yīng)用技巧分享
作者:佚名
我們?cè)谶@里為大家介紹的C++剪切板的一些常用操作包括:復(fù)制數(shù)據(jù)至剪切板;剪切板中取得數(shù)據(jù);模擬Ctrl+V等等。
C++編程語(yǔ)言的應(yīng)用方式靈活,功能強(qiáng)大,其中有很多功能的實(shí)現(xiàn)都可以通過(guò)多種方法來(lái)輕松的實(shí)現(xiàn)。我們?cè)谶@里會(huì)為大家詳細(xì)介紹一下C++剪切板的一些常用操作技巧,希望能方便大家對(duì)此方面的理解。
C++剪切板操作之復(fù)制數(shù)據(jù)至剪切板
- 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++剪切板操作之從剪切板中取得數(shù)據(jù)
- BOOL GetTextFromClipboard()
- {
- if(::OpenClipboard(NULL))
- {
- //獲得剪貼板數(shù)據(jù)
- 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);
【編輯推薦】
責(zé)任編輯:曹凱
來(lái)源:
博客園