【第4回】

第2章:超簡単テキストエディター

設定の保存とレジストリ

(00/05/19)

nakka

 みなさんこんにちは、nakkaです。先週はお休みしてごめんなさい。ついつい体調を崩してしまいました。やはり男の一人暮らしとプログラミングはキケンです。みなさんも十分気を付けてください。前回まで3回にわたって制作した時計ソフトはいかがでしたか? きっとみなさんは私が作ったよりも高機能な時計ソフトができたことでしょう。さて、今回からテキストエディターを制作します。

仕様を決定

 今回から簡単なテキストエディターを制作していきます。Windowsには「メモ帳」というテキストエディターが付属していますが、本当にシンプルに作られているので使っているとすぐに物足りなくなってきます。そこで、メモ帳よりもう少し使いやすい、いくぶん機能が多いくらいのテキストエディターを作りましょう。

 文章の編集をするエンジン部分はメモ帳が使っているのと同じEDITコントロールを使います。EDITコントロールでは、大きなテキストファイルになると開くことができなくなるという欠点があり、Windows 95/98では32KB以上のテキストファイルを編集できません。本当に使いやすさを追求した本格的なテキストエディターを作成する場合はエディターエンジンを含めすべて自前で作成すると自分好みの機能を付けられるし、なによりプログラミングの良い勉強にもなると思います。それに自分用のエディターエンジンを作成しておけば、文章編集が必要な他のソフトを作るときにも使い回すことができます。

 ただ、今回はそこまで追求するのはやめておきます。メモ帳と同じEDITコントロールを使う代わりに、GUIの洗練に力をいれてみるつもりです。気になる32KBの制限ですが、ちょうど窓の杜メールサービスが30~40KB程度なので、メールの原稿を書いたり、書類の下書きを刷る程度の通常の文章編集ではそんなに大きな問題にならないと思います。今回作成するテキストエディターでは、「文章の表示・編集」と「ファイルの読み込み、保存」という基本機能をもたせ、徐々に「バックアップ機能」「ショートカットキー」など、あると便利な機能を追加していくつもりです。

これだけでテキストエディター

 以前紹介したテンプレートを使用して簡単なテキストエディターを作ります。完成形まで一気に作るのではなく、簡単な部分から機能をひとつずつ作っていくと作りやすいと思います。大きなものを作ると考えると目標が遠く気が重くなりがちですが、小さなものを組み合わせるつもりでやればいいんです。優先順位の高い機能は何かというのをしっかり考えて、まずはその部分を作成しておき、後からその他の機能を付けていくという感じがいいでしょう。

 先ほども言いましたが、テキストエディターの最低限の機能として、文章の編集ができ、ファイルの保存・読み込みが行えるというのがあげられます。これだけ作れば最低限のテキストエディターと呼ぶことはできるでしょう。最低限だけにメモ帳より機能が少ないですが、ここから少しずつ機能を増やしていき、だんだんと便利なソフトにしていくのです。

簡単なテキストエディター

ダウンロード
(15KB)

設定の保存とレジストリ

 繰り返し使うソフトであれば、必ず設定を保存する必要が出てきます。たとえば、ウィンドウの大きさや位置を記憶させるだけでも、自動ではやってくれません。設定を保存しようとするにはいくつかの方法があります。現在もっとも使われているのはレジストリを利用する方法です。そのほか、以前主流だったINIファイルを使用する方法と、設定保存用のファイルを独自に用意する方法があります。

 レジストリの利点として、ユーザーごとの設定を自動的に分けて保存してくれることや階層を作れること、バイナリデータを保存できることなどがあります。しかしソフトをアンインストールする場合に、実行プログラムの格納してあるフォルダを削除しただけではレジストリに設定が残ってしまうため、アンインストール用のソフトや機能を用意するなどの必要があります。作ったソフトが500KBでも、インストーラーが1MBだったってことがよくあるのが難点です。

 ほかに、INIファイルを利用する方法があります。これは実行プログラムと同じフォルダに設定ファイルを置くことができるので、管理しやすいのが利点です。マルチユーザーで使用する場合などのレジストリの利点はなくなりますが、アンインストールが簡単です。ただ、ファイルとして置いてあるので間違って消してしまう危険性もあります。

 レジストリとINIファイル以外に、自分で設定ファイルのフォーマットを決めてすべて自分で行うことも可能です。一番手間が多く面倒ですが、ソフトの機能にふさわしいフォーマットを決めることができるし、自分で作るのでどんな内容でも保存できるようになります。

 今回はINIファイルを使用して設定の保存を行うことにしました。広く公開するのであれば先程述べた不都合も気になりますが、ファイルを閲覧しやすいので設定の保存方法を覚えるのには一番手軽で便利です。もちろん、INIファイルで思いどおりに設定を保存できるようになれば、レジストリを使った設定保存に移行するときもそんなに苦にはならないでしょう。ということで、ウィンドウサイズをINIファイルに設定できるようしました。

INIファイルで設定の保存

ダウンロード
(16KB)

 次回は操作しやすいテキストエディターを目指して、GUIを考えてみたいと思います。それでは、また来週。

nakka

トップページへ
nakkaのオンラインソフトレシピ INDEX


Copyright(C), 1996-2000 Impress Corporation.
編集部への連絡は mado-no-mori-info@impress.co.jp まで