Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 如何使NSTableView透明?_Macos_Xcode4_Transparency_Nstableview - Fatal编程技术网

Macos 如何使NSTableView透明?

Macos 如何使NSTableView透明?,macos,xcode4,transparency,nstableview,Macos,Xcode4,Transparency,Nstableview,我要使NSTableView透明。 我在这里使用WindowController类。 我试着这样做: - (void)windowDidLoad { [super windowDidLoad]; [[self enclosingScrollView] setDrawsBackground: NO]; [[self enclosingScrollView] setBorderType:NSNoBorder]; } - (BOOL)isOpaque {

我要使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

你可以在这里看到

有什么帮助吗??如果我做错了什么,请记住我或纠正我。

谢谢。

如果您的
nScrollView
包含
NSTableView
,您可以将滚动视图的
drawsBackground
属性设置为
NO
,如下所示:

yourScrollView.drawsBackground=否


得到答案。。!!!我刚试过这个

[tableview setBackgroundColor:[NSColor clearColor]]; 
[tableview setHeaderView:nil]; 
而且它的工作很好——斯奈哈尔


复制自相关评论,因为它有点隐藏…

如果您的应用程序需要显示透明的表格视图,请将表格视图的背景色设置为清晰,并将封闭的滚动视图设置为不绘制其背景。以下代码段显示了显示透明表的一种方法:

斯威夫特:

yourTableView.backgroundColor = NSColor.clear
yourTableView.enclosingScrollView?.drawsBackground = false
目标-C

[theTableView setBackgroundColor:[NSColor clearColor];
[[theTableView enclosingScrollView] setDrawsBackground:NO];

得到了答案。。!!!我刚刚尝试了这个
[tableview setBackgroundColor:[NSColor clearColor]]
[tableview setHeaderView:nil]很好用……这对我也很有效。专门将背景色设置为透明色