第3回 ソースの整理と例外対応

公開日:2018-04-17 更新日:2019-05-14

1. 内容

ソースの整理と例外対応を実装しました。

1. メニューのクリックイベント

前回はメニューのクリックイベントに直接処理を書いていましたが、それぞれメソッドを作成し、ワンクッション入れるようにしました。

2. キャンセル処理

保存するかどうかの確認メッセージボックスには、「はい」「いいえ」「キャンセル」の選択肢があります。
「いいえ」の場合は、保存をせずにそのまま次の処理へ進むだけですが、
「キャンセル」の場合、その時点で処理を中止する必要があります。
メソッドの呼び出しがいくつかの階層になる場合、最初の呼び出し元までキャンセルの分岐を入れて戻るのは、結構手間です。
そこで今回は、CancelException と言う例外を作成して、キャンセル時に例外を発生させるようにしました。
これにより、try ~ catch をしている最初の呼び出し元まで一気に戻ることができます。

3. 例外対応

メニューのクリックイベントの中を、全て try ~ catch で囲うようにしました。
これにより、エラーが発生した時に、ユーザーにわかりやすいエラー表示を行うことができます。
また、メッセージボックスなどでキャンセルされた場合、独自の例外を発生するようにしたため、それもここで catch して、例外がなかったことにしています。

2. 動画



3. 画面

前回と特に変わってないです。
画像1

4. 今後の課題

1. ツールバー対応

ツールバーから新規作成、開く、上書き保存が行えるようにする。

2. ファイル名の表示対応

現在のファイルのパスをウィンドウのタイトルに設定する。
また、テキストが編集された場合は、「(*)」をつけて、編集後、まだ保存されていないことがわかるようにする。

3. その他

コピペ、元に戻す、右クリックメニュー、検索、grep、選択した数式の計算、大文字・小文字変換、半角・全角変換、10進数・16進数の変換、インデント調整、文字コード対応、ドラッグ&ドロップでファイルオープン、タブ化、ウィンドウの位置・サイズの保持、ファイルツリー・リストを付けた3ペイン構成にする、プラグインでテキストの加工を行えるようにする、プラグインでカレンダーをつけて日記をつけられるようにする、などなど。

ダウンロード

ver実行ファイルソース
1.0.2
2018/04/17
ncm_1_0_2.zipncm_1_0_2_src.zip