我有一个大纲视图,我能够实现鼠标悬停功能并使用鼠标悬停选择行NSTrackingArea
。我在每个单元格的末尾都有按钮。
- 我想在开始时隐藏所有按钮。
- 在鼠标悬停时,按钮应该与选定的列单元格一起启用。
func configureTableHighlight() {
let trackingArea = NSTrackingArea(rect: foldersOutlineView.frame, options: [.mouseMoved, .activeInKeyWindow, .inVisibleRect], owner: self, userInfo: nil)
foldersOutlineView.addTrackingArea(trackingArea)
}
override func mouseMoved(with event: NSEvent) {
let pointInTableView = foldersOutlineView.convert(event.locationInWindow, to: nil)
let row = foldersOutlineView.row(at: pointInTableView)
selectedRow = row
if row == -1 {
//cell.btnScheduler.isHidden = true
cell.btnScheduler.isTransparent = true
cell.btnScheduler.isEnabled = false
return
}else{
//cell.btnScheduler.isHidden = false
cell.btnScheduler.isTransparent = false
cell.btnScheduler.isEnabled = true
}
}