我想制作透明的NSTableView 我在这里使用WindowController类 我正在尝试这个:
- (void)windowDidLoad
{
[super windowDidLoad];
[[self enclosingScrollView] setDrawsBackground: NO];
[[self enclosingScrollView] setBorderType:NSNoBorder];
}
- (BOOL)isOpaque {
return NO;
}
- (void)drawRect:(NSRect)drawRect
{
[super drawRect: drawRect];
}
但是当我写这段代码时,我在帮助窗口找不到enclosingScrollView
你可以在这里看到..
任何帮助?如果我做错了,请记住我或纠正我 谢谢。
答案 0 :(得分:6)
如果NSScrollView
包含NSTableView
,则可以将滚动视图的drawsBackground
属性设置为NO
,如下所示:
yourScrollView.drawsBackground = NO;
答案 1 :(得分:5)
得到答案.. !!!我刚试了这个
[tableview setBackgroundColor:[NSColor clearColor]];
[tableview setHeaderView:nil];
及其工作正常...... - - Snehal
复制有问题的评论,因为它有点埋没......
答案 2 :(得分:1)
如果您的应用需要显示透明表格视图,请将表格视图的背景颜色设置为清除,并将封闭滚动视图设置为不绘制其背景。以下代码段显示了一种显示透明表的方法:
夫特:
yourTableView.backgroundColor = NSColor.clear
yourTableView.enclosingScrollView?.drawsBackground = false
目标-C
[theTableView setBackgroundColor:[NSColor clearColor];
[[theTableView enclosingScrollView] setDrawsBackground:NO];