■文字をパターンで塗る
文字の色を変える応用です。
色を単色ではなく、パターンで表示してみましょう
基本プロジェクトを作成します。作成方法はひな型プロジェクトを作るを見てください。
patternColorとしてプロジェクトを作成しました。
新規プロジェクトを作成します。
patternColorとしました。
MeinMenu.nibのjapaneseをダブルクリックしてnibファイルを編集します。
windowを少し小さくして、名前を"wi"とします。

text fieldを一つ配置します。名前は"tf"としました。
少し横に長くしました。

ボタンを一つ配置します。名前は"bu"としました。
Event Handlerのclickedにチェックを入れ、AppleScriptのApplication.applescriptにチェックを入れます。

EditScriptボタンを押してスクリプトを書きます。


| -- Application.applescript on clicked theObject set img to load image "NSApplicationIcon" call method "setColorToTextField:image:" of class "EditFieldColor" with parameters {text field "tf" of window "wi", img} end clicked |
call methodの行は...img}まで続けて下さい。
次にObjective-Cのクラスを作成します。
ファイルから新規ファイルを選び、Objective-C classを選択して
ボタンを押します。


ファイル名を付けます。
EditFieldColor
としました。
「完了」ボタンを押します。

EditFieldColor.hとEditFieldColor.mの二つのファイルができます。

EditFieldColor.hにコードを書きます

| #import <Cocoa/Cocoa.h> @interface EditFieldColor : NSObject { } + (void) setColorToTextField:(id)field image:(NSImage *)img; @end |
として下さい
次に
EditFieldColor.mにコードを書きます。
| #import "EditFieldColor.h" @implementation EditFieldColor + (void) setColorToTextField:(id)field image:(NSImage *)img; { NSColor *theColor = [NSColor colorWithPatternImage:img];//カラー作成 [field setTextColor:theColor];//テキストフィールドにカラー作成 } @end |
として下さい。
ビルドして実行して下さい。

text fieldになにか文字を入れます。

黒で表示されていますね。
ボタンを押します。

文字の色がかわりましたよね。
これはアプリケーションのアイコン画像、NSApplicationIconのTIFF画像で文字を塗っています。

他の画像をプロジェクトに登録して、
Applescriptの
![]()
この部分を変えてやれば、その画像をカラーとして使うようになります。






2002.1.18 (C)Satoshi Oomori