index
プロジェクト

■フォーマッターを極める

文字を表示させるときに、いろいろな表示方法で表示したいのではないでしょうか、たとえば小数点以下2桁までにしたり、金額に「円」を付けたり。
それを行うのがformatterです。

基本プロジェクトを作成します。作成方法はひな型プロジェクトを作るを見てください。
formatterとしてプロジェクトを作成しました。


MainMenu.nibのjapaneseをダブルクリックしてnibファイルを編集します。

windowを小さくして名前を付けます。
"wi"としました。

text fieldを3つ配置します。
一番上を"tf1"としました。
EventHandlerのEditingのchangedにチェックを入れ、applescriptのApplication.applescriptにチェックを入れます。

InfoパネルのAttributesからTitleに0をいれ、Alignment(配置)を左から3番め(右寄せ)にします。

2番めを"tf2"としました。
EventHandlerのEditingのchangedにチェックを入れ、applescriptのApplication.applescriptにチェックを入れます。

InfoパネルのAttributesからTitleに0をいれ、Alignment(配置)を左から3番め(右寄せ)にします。



3番めを"tf3"としました。
これには何もチェックはいれません。
InfoパネルのAttributesからTitleに0をいれ、Alignment(配置)を左から3番め(右寄せ)にします。

コードを書きます。

簡単な計算です。
-- Application.applescript
property val1 : 0
property val2 : 0
on changed theObject
tell window "wi"
set val1 to contents of text field "tf1"
set val2 to contents of text field "tf2"
set contents of text field "tf3" to val1 + val2

end tell
end changed

ビルドして実行してみましょう
足し算がされますね。

ここから本題です。
この数字に「円」とつけるにはどうしたらいいでしょうか。

ナンバーフォーマッターをこのtext fieldに付けてやればいいのです。

一番上のtext fieldにナンバーフォーマッターをドロップします

少数点以下を削除して「円」を追加しました。

2番めのtext fieldにナンバーフォーマッターをドロップします
少数点以下を削除して「円」を追加しました。

3番めのtext fieldにナンバーフォーマッターをドロップします
少数点以下を削除して「円」を追加しました。


InfoパネルのAttributesから3つともTitleに0ます。
すると自動的に「円」がつきます。

これでビルドして実行してみましょう
「円」がついたまま計算されましたね。



2002.1.18 (C)Satoshi Oomori