c++builde6怎么才能实现把字符串复制到剪贴板
c++builde6如何才能实现把字符串复制到剪贴板 - C++ Builder / Windows SDK/API
很简单的一个功能。
比如得到一个字符串变量
String straaa="1234565";
然后在Button1Click事件中加入代码。
功能就是把straaa中的内容复制到剪贴板,然后再别的地方直接按Ctrl+V就能实现粘贴。
还请各位大侠指教。
------解决方案--------------------
很简单的一个功能。
比如得到一个字符串变量
String straaa="1234565";
然后在Button1Click事件中加入代码。
功能就是把straaa中的内容复制到剪贴板,然后再别的地方直接按Ctrl+V就能实现粘贴。
还请各位大侠指教。
------解决方案--------------------
- C/C++ code
void __fastcall CopyToClipboard(AnsiString Data) { if (!OpenClipboard(NULL)) return; EmptyClipboard(); HGLOBAL hglbCopy = GlobalAlloc(GMEM_MOVEABLE, (Data.Length() + 1) * sizeof(Data[1])); char * lptstrCopy = (char *)GlobalLock(hglbCopy); memcpy(lptstrCopy, Data.c_str(),Data.Length()); lptstrCopy[Data.Length()] = '\0'; GlobalUnlock(hglbCopy); SetClipboardData(CF_TEXT,hglbCopy); CloseClipboard(); }
------解决方案--------------------
- C/C++ code
#include <clipbrd.hpp> void __fastcall TForm1::Button1Click(TObject *Sender) { String straaa="1234565"; Clipboard()->AsText = straaa; }
------解决方案--------------------
- C/C++ code
// 间接方法 void __fastcall TForm1::Button1Click(TObject *Sender) { TMemo *mm = new TMemo(this); String straaa = "1234565"; mm->Lines->Add(straaa); mm->CopyToClipboard(); delete mm; }