クリップボード Windowsのアプリケーションでは、マウスで 選択したテキスト部分やグラフィックなどの データを、 クリップボード と呼ばれるメモリ領域にコピーしたり、また 他のアプリケーションがクリップボードにコ ピーしたデータを読み出すことができます。 クリップボード • BCBでのクリップボードの使用 1.Clipbrd.hpp をインクルード 2.クラスTClipboardを使用するが そのままは使わない。 クリップボード • TClipboardの主なメンバ関数 void __fastcall Clear(void); void __fastcall SetTextBuf(char * Buffer); int __fastcall GetTextBuf(char * Buffer, int BufSize); bool __fastcall HasFormat(Word Format); • TClipboardのプロパティ __property System::AnsiString AsText = {read=GetAsText, write=SetAsText}; クリップボードにテキストを入れたり,クリップボードから テキストを取り出すことができる。 クリップボード • プログラム例: 1.Button1をクリックしたときに、プログラム で文字列をクリップボードにセットします: AnsiString a; a = "TEST for Clipboard"; Clipboard()->SetTextBuf(a.c_str()); クリップボード • プログラム例: 2.Button2をクリックしたとき、クリップボードの内 容が文字列ならメモにコピーします。 AnsiString buf; if (Clipboard()->HasFormat(CF_TEXT)) buf = Clipboard()->AsText; Memo1->Lines->Add(buf); クリップボード • TMemoなどには、以下のようなクリップ ボードにアクセスする関数がある。 void __fastcall CopyToClipboard(void); void __fastcall CutToClipboard(void); void __fastcall PasteFromClipboard(void); クリップボード • プログラム例: 3.Button3をクリックしたとき、Memoの PasteFromClipboard()関数をつかって、ク リップボードの内容をコピーします。 Memo1->PasteFromClipboard(); クリップボード • Bitmap画像のクリップボード利用 クラスTBitmapがクリップボード操作用の 関数をもっている。 virtual void __fastcall LoadFromClipboardFormat(Word AFormat, int AData, HPALETTE APalette); クリップボード内のビットマップをビットマップオブジェクトにロードする。 virtual void __fastcall SaveToClipboardFormat(Word &AFormat, int &AData, HPALETTE &APalette); ビットマップのローカルコピーをクリップボード形式で作成する。 クリップボード
© Copyright 2024 ExpyDoc