另TEdit不获得焦点,只支持键盘输入的Ctrl + C和Ctrl + V。
14 个解决方案
#1
#include <vcl/Clipbrd.hpp>
TClipboard *clipBoard=Clipboard();
clipBoard->AsText=Edit1->Text;
TClipboard *clipBoard=Clipboard();
clipBoard->AsText=Edit1->Text;
#2
“TEdit不获得焦点”这个实在难以理解。
#3
这个是把Edit1的内容复制到剪贴板上。能复制到文本文件里吗?
#4
有这么一种就是将焦点选在TEdit中,选中要复制的内容,然后按ctrl + C可以复制,但我不是要这种。
#5
越解释越不明白了
void __fastcall TForm1::Button1Click(TObject *Sender)
{
this->Edit1->CopyToClipboard();
this->Edit2->PasteFromClipboard();
}
#6
不要说你不要哪种,要说你要哪种.
是不是要右键菜单里面"复制"?
是不是要右键菜单里面"复制"?
#7
就像windows的复制粘贴功能一样,不知道能不能实现。
#8
windows的计算器一样,复制粘贴功能。
#9
你的意思是焦点不在edit上面的时候,也要能够用Ctrl + C和Ctrl + V来复制和粘贴内容到edit上面吗.
这样的话,我只能想到在form的onkeydown事件中处理,更好的办法看其它人有没有.
还是要加个菜单来复制粘贴edit里面的内容? edt1->CopyToClipboard(); ?
这样的话,我只能想到在form的onkeydown事件中处理,更好的办法看其它人有没有.
还是要加个菜单来复制粘贴edit里面的内容? edt1->CopyToClipboard(); ?
#10
焦点不在edit上面的时候,也要能够用Ctrl + C来复制edit里的内容,然后要粘贴到文本文件(.txt)中。
不加别的菜单。
#11
我能想到的方法就是在 form中(焦点不在edit上应该是在form中吧)的onkeydown上检测 Ctrl + C ,然后把edit的内容复制到剪贴板中.
#12
那这么说用edit1->CopyToClipboard()将edit1的内容复制出来(是复制在Windows系统的剪贴板中了吗?),只要再按键盘上的Ctrl+V,在哪里(.txt或.xls文件中)都可以实现粘贴?
#13
这个自己试一下很简单的吧...为什么不自己试一下呢?
edt1->SelectAll();
edt1->CopyToClipboard() ;
edt1->SelectAll();
edt1->CopyToClipboard() ;
#14
我已经做出来了,就是用上面的方法。仍然很感谢!
你说的很对!我前面以为使用CopyToClipboard方法只能在本程序中用,后来发现能复制到 系统的剪切板中。没试成功是因为在C++ Builder中用的是if(ssCtrl in Shift)判断,而且没用对方法(我用的是FormKeyPress方法,又不清楚Shift还是一个变量),所以老是报错。
#1
#include <vcl/Clipbrd.hpp>
TClipboard *clipBoard=Clipboard();
clipBoard->AsText=Edit1->Text;
TClipboard *clipBoard=Clipboard();
clipBoard->AsText=Edit1->Text;
#2
“TEdit不获得焦点”这个实在难以理解。
#3
这个是把Edit1的内容复制到剪贴板上。能复制到文本文件里吗?
#4
有这么一种就是将焦点选在TEdit中,选中要复制的内容,然后按ctrl + C可以复制,但我不是要这种。
#5
越解释越不明白了
void __fastcall TForm1::Button1Click(TObject *Sender)
{
this->Edit1->CopyToClipboard();
this->Edit2->PasteFromClipboard();
}
#6
不要说你不要哪种,要说你要哪种.
是不是要右键菜单里面"复制"?
是不是要右键菜单里面"复制"?
#7
就像windows的复制粘贴功能一样,不知道能不能实现。
#8
windows的计算器一样,复制粘贴功能。
#9
你的意思是焦点不在edit上面的时候,也要能够用Ctrl + C和Ctrl + V来复制和粘贴内容到edit上面吗.
这样的话,我只能想到在form的onkeydown事件中处理,更好的办法看其它人有没有.
还是要加个菜单来复制粘贴edit里面的内容? edt1->CopyToClipboard(); ?
这样的话,我只能想到在form的onkeydown事件中处理,更好的办法看其它人有没有.
还是要加个菜单来复制粘贴edit里面的内容? edt1->CopyToClipboard(); ?
#10
焦点不在edit上面的时候,也要能够用Ctrl + C来复制edit里的内容,然后要粘贴到文本文件(.txt)中。
不加别的菜单。
#11
我能想到的方法就是在 form中(焦点不在edit上应该是在form中吧)的onkeydown上检测 Ctrl + C ,然后把edit的内容复制到剪贴板中.
#12
那这么说用edit1->CopyToClipboard()将edit1的内容复制出来(是复制在Windows系统的剪贴板中了吗?),只要再按键盘上的Ctrl+V,在哪里(.txt或.xls文件中)都可以实现粘贴?
#13
这个自己试一下很简单的吧...为什么不自己试一下呢?
edt1->SelectAll();
edt1->CopyToClipboard() ;
edt1->SelectAll();
edt1->CopyToClipboard() ;
#14
我已经做出来了,就是用上面的方法。仍然很感谢!
你说的很对!我前面以为使用CopyToClipboard方法只能在本程序中用,后来发现能复制到 系统的剪切板中。没试成功是因为在C++ Builder中用的是if(ssCtrl in Shift)判断,而且没用对方法(我用的是FormKeyPress方法,又不清楚Shift还是一个变量),所以老是报错。