MacOS 10.12 以降、Xcode 8 以降、Swift 3:
NSTableView ヘッダーのフォントと描画をプログラムでカスタマイズしたいと思います。これに関する古い質問があることは知っていますが、今日うまくいくものは見つかりませんでした。
たとえば、カスタム フォントを設定するために NSTableHeaderCell をサブクラス化しようとしました。
class MyHeaderCell: NSTableHeaderCell {
override func drawInterior(withFrame cellFrame: NSRect, in controlView: NSView) {
NSLog("MyHeaderCell is drawing")
font = NSFont.boldSystemFont(ofSize: 12)
super.drawInterior(withFrame: cellFrame, in: controlView)
}
}
そして、そのサブクラスをテーブル ビューで使用します。
tableColumn.headerCell = MyHeaderCell()
コンソールに「MyHeaderCell is drawing」というメッセージが表示されますが、テーブル ヘッダーのフォントが変わりません。