2

我想创建一个 NSOutlineView 子类,其中一些条目看起来像按钮。它看起来像这样:

+ 水果
  + 有机
    - 苹果
    - 香蕉
    [添加项目]
  + 非有机
    - 樱桃
    [添加项目]
  [添加项目]
+ 蔬菜
  - 萝卜
  [添加项目]

所有“[添加项目]”都是按钮。

我有一种感觉,这涉及以某种方式使用 outlineView:willDisplayCell:forTableColumn:item: 委托方法?

4

1 回答 1

2

您需要outlineView:dataCellForTableColumn:item:在大纲视图的委托中实现该方法,以便为需要按钮的行返回一个 NSButtonCell,为其他行返回一个 NSTextFieldCell。请注意,此委托方法是在 10.5 中添加的,如果您需要支持 10.4 或更早版本,则需要有一个自定义 NSTableColumn 子类来覆盖该dataCellForRow:方法。

于 2009-01-27T17:19:52.673 回答