代码之家  ›  专栏  ›  技术社区  ›  Matt S.

可可:设置所选颜色

  •  2
  • Matt S.  · 技术社区  · 16 年前

    如何设置选择颜色?在本例中,它是不可安装视图中所选内容的颜色

    编辑:

    这是我的子类:

    - (void)highlightSelectionInClipRect:(NSRect)clipRect
    {
    NSBezierPath *windowPath;
    windowPath = [NSBezierPath bezierPathWithRect:clipRect];
    [[NSColor greenColor] set];
    [windowPath fill];
    }
    

    唯一的问题是它将颜色放在背景中,而不是突出显示行时使用的颜色。

    1 回复  |  直到 16 年前
        1
  •  3
  •   Peter Hosey    16 年前

    编写一个子类instableview,在其中重写 the highlightSelectionInClipRect: method ,并使表视图成为该子类的实例。

    方法的实现应该设置选择颜色,然后用该颜色填充矩形。

    请注意,选择颜色是用户可配置的(请参见nscolour的各种突出显示颜色方法),因此在没有非常好的理由的情况下,不应覆盖选择颜色。

    如果要使所选内容突出显示渐变,如源列表,则更容易: Set the table view's highlight style. 您不需要子类,可以在ib中设置这个属性。