怎么用api函数,把字符串复制到剪贴板并且清除?

解决方案 »

  1.   

    不知道怎么用API,delphi有自带的函数!引用Clipbrd单元,然后执行
    clipboard.Clear;
    clipboard.AsText := 'hahaha';//此处换上你的字符串
      

  2.   

    //复制字符串AData到剪贴板
    //如果AData为空,则清空剪贴板procedure StrToClipbrd(AData: string);
    var
      hMem: THandle;
      pMem: PChar;
    begin
      hMem := GlobalAlloc(GHND or GMEM_SHARE, Length(AData) + 1);
      if hMem <> 0 then begin
        pMem := GlobalLock(hMem);
        if pMem <> nil then begin
          StrPCopy(pMem, AData);
          GlobalUnlock(hMem);
          if OpenClipboard(0) then begin
            EmptyClipboard;
            SetClipboardData(CF_TEXT, hMem);
            CloseClipboard;
          end
          else
            GlobalFree(hMem);
        end
        else
          GlobalFree(hMem);
      end;
    end;