リッチ エディット コントロールでのクリップボード操作

更新 : 2007 年 11 月

アプリケーションでは、使用できる最適なクリップボード形式または指定したクリップボード形式のいずれかを使用して、クリップボードの内容をリッチ エディット コントロール (CRichEditCtrl) に貼り付けることができます。また、リッチ エディット コントロールに任意のクリップボード形式を貼り付けることができるかどうかを判断することもできます。

Copy メンバ関数を使用すると現在の選択項目の内容をコピーでき、Cut メンバ関数を使用するとその内容を切り取ることができます。同様に、Paste メンバ関数を使用すると、クリップボードの内容をリッチ エディット コントロールに貼り付けることができます。コントロールでは、使用可能であると最初に認識したクリップボード形式で貼り付けます。多くの場合、この形式が最適な形式になります。

特定のクリップボード形式を貼り付けるには、PasteSpecial メンバ関数を使用します。この関数は、ユーザーがクリップボード形式を選択できる [形式を選択して貼り付け] コマンドを使用するアプリケーションで使用します。CanPaste メンバ関数を使用すると、指定した形式がコントロールで認識されるかどうかを判断できます。

また、CanPaste を使用して、使用できる任意のクリップボード形式がリッチ エディット コントロールで認識されるかどうかを判断することもできます。この関数は、OnInitMenuPopup ハンドラで使用します。アプリケーションでは、使用できる任意の形式がコントロールに貼り付けできるかどうかに応じて [貼り付け] コマンドを有効にしたり、淡色表示にしたりできます。

リッチ エディット コントロールには、2 種類のクリップボード形式が登録されています。リッチ テキスト形式 (RTF: Rich-Text Format) と RichEdit Text and Objects と呼ばれる形式です。RegisterClipboardFormat 関数を使用して、CF_RTF 値および CF_RETEXTOBJ 値を指定することで、アプリケーションにこれらの形式を登録できます。

参照

概念

コントロール (MFC)

参照

CRichEditCtrl の使い方