次へテキスト形式での保存・読み込み今回は、リッチエディットコントロールの内容をファイルに保存したり、ファイルを読み込んでコントロールに表示したりということをしてみます。できることならば、RTF形式のファイルの保存・読み込みができるとよいのですが、それらを行なうにはコールバック関数を準備する必要があるため、関数という概念を持たないHSPでは、拡張DLLなしでは実現することができません。そこで今回はRTFファイルではなくテキストファイルの保存・読み込みを行ってみましょう。バイト未満のテキストしか扱うことができません。了承しておいてください。メッセージを送信します。pszText;このメッセージは、ウィンドウに関連付けられたテキストを設定するためのメッセージです。タイトルバーを持つウィンドウに対してこのメッセージを送信すると、タイトルバーの文字列が指定されたものに置き換えられます。標準エディットコントロールやリッチエディットコントロールに対して送信すると、コントロールのテキストの内容すべてを指定されたテキストに置き換えます。パラメータには、設定するテキストのアドレスを指定します。リッチエディットコントロールに送信する場合に、ここにファイルの内容を読み込んだバッファのアドレスを指定すれば、コントロールのテキストが置きかわります。命令で保存するという手段をとります。メッセージを送信して、コントロール中のテキストサイズを取得します。メッセージを送信してこのバッファにテキストをコピーします。メッセージは、ウィンドウに関連付けられたテキストの長さを取得します。リッチエディットコントロールに送信すると、戻り値としてコントロール中のテキストの長さがバイト単位で返ります。メッセージは、ウィンドウに関連付けられたテキストを取得します。そのバッファのサイズを指定します。リッチエディットコントロールに送信すると、コントロール中のテキストが取得されます。戻り値として、バッファにコピーされたテキストのサイズが返ります。命令を使ってファイルに保存します。filesize内容変更フラグ保存・読み込みの手順に関しては以上ですが、もう1つ、新規作成やファイルを開くときに、現在編集中の内容が変更されていた場合にそれを保存するかどうかをユーザーに尋ねるようにしたいですね。それを実現する方法を説明します。flag)という、内容が変更されたかどうかの状態を入れておく変数を内部に持っています。flag)とも呼ばれています。設定された)状態になるようになっているのです。そこで、新規作成やファイルを開くときにこのフラグを取得して、このフラグがセットされていれば現在の内容を保存するかどうかの確認を取ればよいことになります。メッセージを送信します。メッセージを送信すると、戻り値として現在の変更フラグが返ります。リッチエディットコントロールのテキストが変更されていないことを示しています。ない場合は、内容が変更されたことを示しています。設定する)必要があります。メッセージを使います。パラメータには、新しく設定するフラグを指定します。今回は新しく背景色の設定を行っています。メッセージを送信して行ないます。パラメータには背景色にシステムカラーを使うかどうかを示すフラグ指定します。指定して得られる色)が設定されます。パラメータで指定された色になります。このパラメータには背景色を表すRGB値を指定します。サンプルスクリプトそれでは、スクリプトを書いてみましょう。今回はモジュールを定義しています。リッチエディットコントロールの作成および、各メッセージの送信をモジュール命令で定義しました。格納されるようになっています。"内容が変更されています。"内容が変更されています。