0

我希望当用户单击按钮时,只有包含 URL(以 http:// 开头)的文本Clipboard才会自动粘贴到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();
  }
}
4

1 回答 1

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

顺便说一句,http://不是唯一广泛使用的 URL 方案。至少,也要考虑寻找https://

于 2015-10-13T18:22:23.063 回答