タイトル | 鶴薗賢吾のCocoaはやっぱり!出張版》#6 - ツールバー(6) | カテゴリー | ユーザインタフェース, Cocoa, 鶴薗賢吾のCocoaはやっぱり!出張版 |
作成日 | 2001/12/17 22:59:37 | 作成者 | 新居雅行 |
 ̄ ̄ ̄ツールバーアイテム辞書の登録処理___ さて、先程説明をとばしたaddToolbarItemのところに戻ります。パラメータが沢山ありますので、まずはパラメータの説明から行います。addToolbarItem関数の先頭部分を見ていただきましょう。 ◇Controller.m → addToolbarItem
最初のtheDictが、ツールバーアイテムを登録する辞書のインスタンスで、それ以降は、登録するツールバーアイテムに関する情報になっています。 identifierからtoolTipまでは、今まで説明したツールバーアイテムの属性そのものですので、対応する文字列を渡します。targetは、イメージアイテムがクリックされた時のメッセージの送り先です。送るメッセージはactionで指定します。ビューアイテムの場合は、ビューアイテムの中の部品に予め設定されているため、このターゲットとアクションは無視されます。itemContentは、イメージアイテムなら画像のインスタンス、ビューアイテムならカスタムビューのインスタンスを渡します。これをツールバーアイテムへセットするわけですが、セットする際に使用するメソッドをsettingSelectorで指定します。イメージアイテムの場合は、setImage : を、ビューアイテムの場合は、setView : を指定します。menuは、Text Onlyモードの時やオーバーフローメニューで使用するメニューです。 呼び出し元のところを見てみます。addToolbarItemは、3回呼ばれていますが、それぞれはツールバーのアイテムの「 Font Style 」「 Font Size 」「 Blue Text 」の3つの登録の処理です。Font StyleとFont Sizeは、ビューアイテムでほぼ内容が同じなので、Font Styleのみ説明します。Blue Textは、イメージアイテムのなのでビューアイテムとはパラメータがちょっと異なります。 ◇Controller.m → awakeFromNib
では、addToolbarItemの中を詳しく見ていきます。 ◇Controller.m → addToolbarItem
最初に空のツールバーアイテムをallocとinitWithItemIdentifier : で作りまして、後は、setXXX : メソッドで次々に属性をセットしていっています。performSelector : withObject : は、メッセージを指定のインスタンスに送るためのメソッドです。
itemインスタンスが持っているsettingSelectorメソッドをitemContentをパラメータとして実行するというものです。つまり、イメージアイテムの場合は、
が実行されますし、ビューアイテムの場合は、
が実行されることになります。ツールバーアイテムは、setImage : を呼ぶことでイメージアイテムになり、setView : を呼ぶことでビューアイテムになります。 そして、setMenuFormRepresentation : でメニューをセットしています。このメソッドのパラメータは、NSMenuItemですが、Interface BuilderではNSMenuを作ることになりますので、ちょっと細工をしてNSMenuItemを作っています。最後に、辞書に登録しています。 (この項続く) [鶴薗賢吾] | |
関連リンク | Cocoaはやっぱり! |