線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1068
推到 Plurk!
推到 Facebook!

Clipboard中的资料如何添加到数据表中?

尚未結案
hrbshen
一般會員


發表:10
回覆:11
積分:4
註冊:2005-04-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-05 10:01:50 IP:218.9.xxx.xxx 未訂閱
我从其他应用程序的数据表格中Copy数据至Clipboard。 有没有简便的办法将此clipboard中的数据组批量添加到数据库中? 谢谢
JackTasy
初階會員


發表:22
回覆:97
積分:28
註冊:2002-06-06

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-05 16:57:16 IP:211.76.xxx.xxx 未訂閱
以下程式片段可以即時自動的把Clipboard中文字內容或圖片反應呈現出來。你可自行判斷資料種類然後做任何需要的應用,例如你提到的添加到数据库中。 先在 Form 上面放上 RichEdit1 和 Image1 兩個元件,然後程式碼如下:
unit Unit3;    interface    uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, ComCtrls;    type
  TForm3 = class(TForm)
    RichEdit1: TRichEdit;
    Image1: TImage;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
    procedure WMDrawClipboard (var message : TMessage);
                              message WM_DRAWCLIPBOARD;
    procedure WMChangeCBCHain (var message : TMessage);
                              message WM_CHANGECBCHAIN;
  public
    { Public declarations }
  end;    var
  Form3: TForm3;    implementation    {$R *.dfm}    { TForm3 }    uses ClipBrd, ShellApi;    var
  MangoSiguienteVisor : THandle;    procedure TForm3.WMChangeCBCHain(var message: TMessage);
begin
  if message.wParam = MangoSiguienteVisor then begin
    MangoSiguienteVisor := message.lParam;
    message.Result := 0;
  end else begin
    message.Result := SendMessage(MangoSiguienteVisor, WM_CHANGECBCHAIN,
    message.wParam, message.lParam);
  end;
end;    procedure TForm3.WMDrawClipboard(var message: TMessage);
begin
  message.Result := SendMessage(WM_DRAWCLIPBOARD, MangoSiguienteVisor, 0, 0);
  if Clipboard.HasFormat(CF_TEXT) then RichEdit1.Text := Clipboard.AsText
    else
  if Clipboard.hasFormat(CF_BITMAP) then
   with Image1.Picture.Bitmap do
      LoadFromClipboardFormat(CF_BITMAP,
                              ClipBoard.GetAsHandle(CF_BITMAP),0);
end;    procedure TForm3.FormCreate(Sender: TObject);
begin
  MangoSiguienteVisor := SetClipboardViewer(Handle);
end;    procedure TForm3.FormDestroy(Sender: TObject);
begin
  ChangeClipboardChain(Handle, MangoSiguienteVisor);
end;    end.    
JackTasy
------
JackTasy
系統時間:2024-06-01 18:55:38
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!