我试图自定义我的应用程序的用户界面,我希望我的NSTableView具有圆角。所以我子类NSTableView的,并得到这个:带圆角的NSTableView
然而,当我填写表格,并选择一排,选择上绘制的边界是这样的:
我我试图在表格视图绘图代码中添加一个剪辑,它不起作用。有关我如何解决这个问题的任何建议?
编辑:
我在NSTableView的绘图代码如下:
- (void)drawRect:(NSRect)dirtyRect {
[NSGraphicsContext saveGraphicsState];
NSRect frame = NSMakeRect(0.0, 0.0, [self bounds].size.width, [self bounds].size.height-1.0);
[[NSBezierPath bezierPathWithRoundedRect:frame xRadius:3.6 yRadius:3.6] addClip];
[super drawRect:dirtyRect];
[NSGraphicsContext restoreGraphicsState];
}
实际圆形框架在NSScrollView的drawRect方法绘制。有趣的是,这并剪辑的第一个和最后一个行的选择:
而不是在表中滚动:
所以问题仍然存在:我如何剪切NSScrollView的圆形框架内的所有绘图?
你会发布你的代码,做剪辑? – paulmelnikow
你重写了'drawRect'和'initWithRect'吗? –
@FireLizzard我会在initWithRect方法中放什么?我在上面的NSTableView中发布了我的drawRect方法。框架的实际绘图发生在NSScrollView的drawRect方法中。 – danjonweb