前へ Xcc>Cocoa 次へ

サブクラス化〜

 MainMenu.nib(English)ウィンドウをClessesタグにしておいてから、ウィンドウ上のポップアップメニューボタンを選択すると NSPopUpButton が選択されるはず。つまり、ポップアップメニューボタンは NSPopUpButton クラスなわけですな。サブクラス化して MyPopUpButton ができたらいつも通りファイル作成。こいつを Xcode でいじっていく。

 あと、ポップアップメニューボタンの Inspector の Custom Class で Class を MyPopUpButton に変更することも忘れずに。

Xcodeヘルプ

Xcodeに戻ると
MyPopUpButton.h
MyPopUpButton.m

ができているので、ここに intValue、setIntValue を追加することになる。

 まず MyPopUpButton.h を開く。ほとんどなんにも書かれてないですな。ここには自分は独自の intValue、setIntValue を持ってますよという宣言が必要。でも書き方がわからない。これを調べるにはメニューから

ヘルプ>Xcodeヘルプ

とすることで辞書を呼び出すことができる。こいつのAPI検索ってとこに NSPopUpButton と打ち込んで、API検索〜。

API

(Application Program Interface)あるプラットフォーム(OSやミドルウェア)向けのソフトウェアを開発する際に使用できる命令や関数の集合のこと。また、それらを利用するためのプログラム上の手続きを定めた規約の集合。

IT用語辞典より

 出てきた検索結果の中の NSPopUpButton をクリックすると下にずらずらと使える機能が説明されるわけですわ。英語で。

 でも今回の intValue 、 setIntValue は見つからないわけで、なんでかっていうと NSPopUpButton は intValue 、setIntValue について、何も独自の処理をしないので説明がないわけ。

 じゃ、どうするかというと NSPopUpButton のサブクラス化前のクラスを調べることになる。この系統図は最初に表示されている Inherits from でわかる。

系統図

 NSObjectから派生されたサブクラスの関係図はまさに家系図。