将某些剪贴板文本粘贴到CBB 10中的TEdit中
问题描述:
我希望当用户单击该按钮时,仅在Clipboard
上包含URL(以http://开头)的文本会自动粘贴到TEdit
中。将某些剪贴板文本粘贴到CBB 10中的TEdit中
我试过下面的代码,但根本不起作用。
#include <Clipbrd.hpp>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
String Text = "http://";
if (Clipboard()->HasFormat(CF_TEXT))
{
Edit->Text = ContainsText(Clipboard()->AsText, Text);
// Clipboard()->Clear();
}
}
答
ContainsText()
返回一个指示bool
潜台词是否找到或没有。您正在将该结果直接分配给您的TEdit
,而不是使用它来决定是否将剪贴板文本分配给TEdit
。
试试这个:
#include <Clipbrd.hpp>
#include <StrUtils.hpp>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if (Clipboard()->HasFormat(CF_TEXT))
{
String CBText = Clipboard()->AsText;
if (ContainsText(CBText, "http://"))
{
Edit->Text = CBText;
// Clipboard()->Clear();
}
}
}
BTW,http://
是没有被广泛使用的唯一URL方案。至少,也考虑寻找https://
以及。
非常感谢Remy。所有的答案现在都完美了! –