私は、NSTableHeaderCell で NSPopUpButtonCell を動作させる方法を理解することができません。私はここで解決策を実装しようとしました:Getting duplicate header button cell in NSTableView when using NSPopUpButtonCell but it does some methods there are not available in Swift, 特に performClickWithFrame on the headerCell.
次のようにポップアップボタンをヘッダーに描画することができました:
class DropDownHeaderCell: NSTableHeaderCell {
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override init(textCell aString: String) {
super.init(textCell: aString)
}
override func drawWithFrame(cellFrame: NSRect, inView controlView: NSView) {
let buttonCell = NSPopUpButtonCell(textCell: "", pullsDown: true)
buttonCell.addItemsWithTitles(["Item1", "Item2", "Item3"])
buttonCell.drawWithFrame(cellFrame, inView: controlView)
}
}
ボタンをクリックしようとすると、代わりにヘッダーセルが選択されます。クリックがヘッダーではなくボタンに登録されるようにするにはどうすればよいですか?