應用程序間的數據交換是象Windows 這樣的多任務環境的重要特性
本質上
剪貼板雖然功能較為簡單
Delphi把剪貼板的大部分功能封裝到一個TClipboard類中
剪貼板傳輸文本主要是應用如下的三個方法
表
━━━━━━━━━━━━━━━━━━━━━━━━━━━
方 法 部 件
TDBEdit TDBMemo
TDBImage
CopyToClipboard TEdit TMemo TMaskEdit
TOLEContainer
TDDEServerItem
TDBEdit TDBMemo
CutToClipboard TDBImage
TEdit TMemo TMaskEdit
TDBEdit TDBMemo
PasteFromClipboard TDBImage
TEdit TMemo TMaskEdit
━━━━━━━━━━━━━━━━━━━━━━━━━━━
除TDBImage外
在把文本傳輸到剪貼板之前
若選TMaskEdit的AutoSelect屬性為True
下面的語句把MaskEdit中選中的文本剪切到剪貼板
MaskEdit
下面的語句把剪貼板中的文本粘貼到Memo的當前光標處
Memo
利用剪貼板類也可以實現文本的傳輸
為方便剪貼板的操作
利用剪貼板類可以進行文本
表
━━━━━━━━━━━━━━━━━━━━━━━━━━━
屬 性 意 義
───────────────────────────
AsText 保存剪貼板的文本
FormatCount 可用剪貼板格式的數目
Formats 可用剪貼板格式鏈
━━━━━━━━━━━━━━━━━━━━━━━━━━━
表
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
方 法 參 數 意 義
─────────────────────────────────────
Clear 無 清除剪貼板的內容
Assign Source:TPersistent 把Source參數指定的對象拷貝到剪貼板
Open 無打開剪貼板
Close 無 關閉打開的剪貼板
SetComponent Source:TPersistent 把部件拷貝到剪貼板
GetComponent Owner 從剪貼板取回一個部件並放置
Parent :TPersistent
SetAsHandle Format:Word 把指定格式數據的句柄交給剪貼板 返回類型
GetAsHandle Format:Word 返回剪貼板指定格式數據的句柄 返回類型
HasFormat Format:Word 判斷剪貼板是否擁有給定的格式 返回類型
SetTextBuf Buffer:PChar 設置剪貼板的文本內容
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
剪貼板中可能的數據格式如下表
表
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
數據格式 意 義
──────────────────────────────
CF_TEXT 文本
CF_BITMAP Windows位圖
CF_METAFILE Windows元文件
CF_PICTURE TPicture類型的對象
CF_OBJECT 任何TPersistent類型的對象
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
利用TClipboard實現文本的傳輸使用AsText屬性和SetTextBuf方法
AsText屬性為非控件部件的剪貼板操作提供了方便
Clipboard
把Form
Label
把剪貼板中的文本寫入Label
SetTextBuf用於把超過
Image部件上的內容和窗體上的圖形可以直接拷貝到剪貼板
例如
Clipboard
把Image
[
From:http://tw.wingwit.com/Article/program/Delphi/201311/25228.html