Swift 3 で Mac 用のアプリケーションを作ろうとしています。
NSMenu と NSMenuItem で右クリックメニューを実装しようとしているのですが、項目のラベルと値を分けたいと考えています。
具体的には、表示の上では「30%」という表示をし、実際の値として「0.3」という値を持たせたり、項目名は「日本語」というラベルにして「ja_JP」という値をもたせるなどして、sender として受け取れるようにしたいと考えています。
以下はイメージですので実際には動作しません。
let item = NSMenuItem(title: "30%", action: #selector(self.menuSelected), keyEquivalent: nil) item.tag = 0.3
func menuSelected(sender: AnyObject){ let value = sender.tag }
NSMenuItem に自由なオブジェクトを持たせるには独自に拡張クラスを作るべきでしょうか? また、そのような場合どういったプロパティ名やメソッド名を使うのが一般的なのでしょうか?
そもそもこういうやり方は良くないなどの意見等もありましたらよろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/30 08:39