我希望当用户点击该按钮时,只有Clipboard
上的包含网址(以http://开头)的文字会自动粘贴到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();
}
}
答案 0 :(得分:1)
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://
。