1

在 Finder 中,我发现当 NSSearchfield 第一次获得焦点时取消按钮消失,但是当我在搜索字段中输入内容时,除非我点击它,否则取消按钮一直存在。我还手动创建了一个 nssearchfield 并输入了一些单词.但是,当我一个一个删除单词直到什么都没有时,最后,取消按钮消失了。它看起来像nssearchfield的默认行为,那么我该如何更改默认行为?请帮忙,谢谢!

4

1 回答 1

3

您可以直接访问取消按钮:

迅速

let searchField = NSSearchField()

// Change the button:
if let cell = searchField.cell as? NSSearchFieldCell,
    let cancelButton = cell.cancelButtonCell {
    // Here you can access all properties of a NSButtonCell
}

// Hide the button:
searchField.cell?.cancelButtonCell = nil

目标 C

NSSearchField* searchField = [NSSearchField new]

// Change the button:
NSSearchFieldCell* cell = searchField.cell
NSButtonCell* cancelButton = cell.cancelButtonCell
if (cancelButton) {
    // Here you can access all properties of a NSButtonCell
}

// Hide the button:
searchField.cell.cancelButtonCell = nil
于 2016-12-13T18:34:11.557 回答