首页 > 编程语言 > 详细

【Swift Mac开发】自定义NSTableView选中行背景

时间:2021-05-14 21:27:01      阅读:19      评论:0      收藏:0      [点我收藏+]

  由于使用的是基于视图的NSTableView,因此可以将NSTableRowView子类化,将其提供给表委托方法- (NSTableRowView *)tableView:(NSTableView *)tableView rowViewForRow:(NSInteger)row;,然后在行视图类中自定义选择。

import Foundation
import Cocoa

class BMTableRowView : NSTableRowView {
    
    override func drawSelection(in dirtyRect: NSRect) {
        if self.selectionHighlightStyle != .none {
            let selectionRect = bounds.insetBy(dx: 0, dy: 0)
            NSColor.color(withRGB: 0x3578f6)!.setFill()
            let selectionPath = NSBezierPath(roundedRect: selectionRect, xRadius: 6, yRadius: 6)
            selectionPath.fill()
        }
    }
}

  使用:

    func tableView(_ tableView: NSTableView, rowViewForRow row: Int) -> NSTableRowView? {
        let rowView = BMTableRowView()
        return rowView
    }

 

【Swift Mac开发】自定义NSTableView选中行背景

原文:https://www.cnblogs.com/xjf125/p/14769674.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!