读书人

c++builde6怎么才能实现把字符串复制到

发布时间: 2012-03-15 11:50:38 作者: rapoo

c++builde6如何才能实现把字符串复制到剪贴板 - C++ Builder / Windows SDK/API
很简单的一个功能。
比如得到一个字符串变量
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;} 

读书人网 >C++ Builder

热点推荐