Sdílet prostřednictvím


CWnd::OpenClipboard

Schránka se otevře.

BOOL OpenClipboard( );

Vrácená hodnota

Nenulová hodnota, pokud otevření schránky prostřednictvím CWnd , nebo 0, pokud jiná aplikace nebo okno schránky otevřít.

Poznámky

Další aplikace nebudou moci upravovat až do schránky Modul CloseClipboard je volána funkce systému Windows.

Aktuální CWnd objektu se stává vlastník schránky až Modul EmptyClipboard je volána funkce systému Windows.

Příklad

//handler for Edit | Copy menu 
void CMdiView::OnEditCopy()
{
   if (!OpenClipboard())
   {
      AfxMessageBox(_T("Cannot open the Clipboard"));
      return;
   }
   // Remove the current Clipboard contents   
   if(!EmptyClipboard())
   {
      AfxMessageBox(_T("Cannot empty the Clipboard"));
      return;  
   }

   // Get the currently selected data, hData handle to  
   // global memory of data
   CString str;
   m_Edit.GetWindowText(str);
   size_t cbStr = (str.GetLength() + 1) * sizeof(TCHAR);
   HGLOBAL hData = GlobalAlloc(GMEM_MOVEABLE, cbStr);
   memcpy_s(GlobalLock(hData), cbStr, str.LockBuffer(), cbStr);
   GlobalUnlock(hData);
   str.UnlockBuffer();

   // For the appropriate data formats...
   UINT uiFormat = (sizeof(TCHAR) == sizeof(WCHAR)) ? CF_UNICODETEXT : CF_TEXT;
   if (::SetClipboardData(uiFormat, hData) == NULL)  
   {
      AfxMessageBox(_T("Unable to set Clipboard data"));    
      CloseClipboard();
      return;  
   }  

   CloseClipboard();
}

Požadavky

Záhlaví: afxwin.h

Viz také

Referenční dokumentace

Třída CWnd

Graf hierarchie

CloseClipboard

EmptyClipboard

OpenClipboard