首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

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

2012-03-15 
c++builde6如何才能实现把字符串复制到剪贴板 - C++ Builder / Windows SDK/API很简单的一个功能。比如得到

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;} 

热点排行