クリップボードの使い方
クリップボードを使うと他のアプリケーションとデータのやり取りを行うことができます。Delphiでは簡単にクリップボードを使うことができます。
コンポーネント自体のクリップボード機能を使う
Memoなどのコンポーネントでテキストを選んで(テキストをマウスでドラッグするなどして)、Ctrl+Cキーでクリップボードにコピーできます。また、Ctrl+Vでクリップボードからペーストできます。
これと同じことはプログラムでも可能です。コピーはCopyToClipboardメソッド、ペーストはPastefromClipboardメソッドで行えます。テキスト全体を選択するにはSelectAllメソッドを使います。
例
Edit1.SelectAll;
Edit1.CopyToClipboard;
TClipboardを使う
クリップボードをカプセル化したTClipboardコンポーネントも用意されています。使用例を次に示します。
例
procedure TForm1.FormCreate(Sender: TObject);
begin
m_clipboard := TClipboard.Create;
end;
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
m_clipboard.Free;
end;
{ 送る }
procedure TForm1.Button1Click(Sender: TObject);
begin
m_clipboard.Open;
m_buff[0] := 'A';
m_clipboard.SetTextBuf(m_buff);
m_clipboard.Close;
end;
{ 受ける }
procedure TForm1.Button2Click(Sender: TObject);
begin
m_clipboard.Open;
m_clipboard.GetTextBuf(m_buff, 80);
Edit1.Text := StrPas(m_buff);
m_clipboard.Close;
end;