zoukankan      html  css  js  c++  java
  • delphi读写剪贴板的一些参考

    设置剪贴板数据:

    先用GlobalAlloc在堆中分配空间,返回的Hmem句柄将作为SetClipboardData的第二个参数。
    然后用GlobalLock把Hmem转为指针,再用delphi的strCopy把字符串写入。


    取剪贴板数据:
    获取剪贴板里的数据时,是不知道当前剪贴板里是否有数据的,也不知道剪贴板里的数据格式是什么。那么下面就来解决这两个问题,先使用函数IsClipboardFormatAvailable来获取剪贴板里的格式是否可以处理,接着使用函数OpenClipboard打开剪贴板,然后使用函数GetClipboardData来获取剪贴板数据

    源代码如下:
    -----------------------------------------------------------

    unit Unit1;

    interface

    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;

    type
      TForm1 = class(TForm)
        Button1: TButton;
        Button2: TButton;
        Memo1: TMemo;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      *******
        { Private declarations }
      public
        { Public declarations }
      end;

    var
      Form1: TForm1;

    implementation

    {$R *.dfm}

    procedure TForm1.Button1Click(Sender: TObject);
    var
      s1:string;
      hmem:HGLOBAL;
      pstr:PChar;
    begin
      s1:='猪悟能在test剪贴板';
      hmem:=GlobalAlloc(GMEM_MOVEABLE or GMEM_DDESHARE,Length(s1)+4);
      pstr:=GlobalLock(hmem);
      StrCopy(pstr,PChar(s1));
      if OpenClipboard(0)then
      begin
         SetClipboardData(CF_TEXT,hmem);
         CloseClipboard;
         GlobalUnlock(hmem);
         GlobalFree(hmem);
         ShowMessage('字符串已经复制到剪贴板');
      end;
    end;

    procedure TForm1.Button2Click(Sender: TObject);
    var
      hmem:THandle;
      pstr:PChar;
    begin
      //检查剪贴板类容类型
      if IsClipboardFormatAvailable(CF_TEXT) then
      begin
        OpenClipboard(0);
        hmem:=GetClipboardData(CF_TEXT);
        pstr:=GlobalLock(hmem);
        Memo1.Text:=pstr;
        GlobalUnlock(hmem);
        CloseClipboard;
      end;
    end;

    end.

    用#9查找tab符号:

    ipos := pos(#9,sTmp)

  • 相关阅读:
    ASP计算周开始和一年有多少周及某年第一周开始日期
    http://www.lancen.net/
    JSP的对象
    两个SQL语句
    sql 分頁
    网页特效制作汇总
    存储过程 解密
    一个计算周次和本周时间范围的代码(c#)
    Java试题
    如何在 VS 2005 里调试 Javascript
  • 原文地址:https://www.cnblogs.com/jiqiwoniu/p/4569516.html
Copyright © 2011-2022 走看看