Windows API一日一練(85)OpenClipboard函數

來源:互聯網
上載者:User

多個軟體之間進行資料共用是非常重要的,難以想像編輯軟體沒有CTRL+C,CTRL+V的功能,是多麼的不方便。很多的操作,就是拷貝的動作,就是為了資料共用。剪貼簿共用是Windows裡比較重要的功能,比如很多採集資料的軟體為了方便導資料到Excel裡面,就可以使用剪貼簿的功能。還有即見即所得的介面導到Word裡面,也可以使用剪貼簿的功能。
 
函數OpenClipboard聲明如下:
 
WINUSERAPI
BOOL
WINAPI
OpenClipboard(
    __in_opt HWND hWndNewOwner);
hWndNewOwner是前貼板所屬於的視窗。
 
調用函數的例子如下:
#001 //拷貝資料到剪貼簿。
#002  //蔡軍生 2007/12/09 QQ:9073204 深圳
#003  void TestClipBoard(void)
#004  {
#005         //開啟剪貼簿並清空。
#006        if (OpenClipboard(m_hWnd) &&
#007               EmptyClipboard())
#008         {
#009               //
#010               HGLOBAL hMem;
#011               std::wstring strText(_T("拷貝資料到剪貼簿"));
#012              
#013               //分配全域記憶體。
#014               hMem = GlobalAlloc(GMEM_MOVEABLE,
#015                    (strText.length() + 1) * sizeof(TCHAR));
#016               if (hMem == NULL)
#017               {
#018                    CloseClipboard();
#019                    return;
#020               }   
#021
#022               //拷貝資料到剪貼簿記憶體。
#023               LPTSTR lpStr = (LPTSTR)GlobalLock(hMem);
#024               memcpy(lpStr, strText.c_str(),
#025                    strText.length() * sizeof(TCHAR));
#026               lpStr[strText.length()] = (TCHAR) 0;
#027               GlobalUnlock(hMem);
#028
#029               //設定資料到剪貼簿
#030               SetClipboardData(CF_UNICODETEXT, hMem);
#031
#032               //關閉剪貼簿。
#033               CloseClipboard();
#034         }
#035  }
#036

本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/caimouse/archive/2007/12/09/1925509.aspx

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.