将某些剪贴板文本粘贴到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://以及。

+0

非常感谢Remy。所有的答案现在都完美了! –