Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.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
Objective c 更改NSTableView(NSScrollView)帧大小_Objective C_Cocoa_Nstableview - Fatal编程技术网

Objective c 更改NSTableView(NSScrollView)帧大小

Objective c 更改NSTableView(NSScrollView)帧大小,objective-c,cocoa,nstableview,Objective C,Cocoa,Nstableview,我有一个自定义视图,其中包含一个NSTableView。默认情况下,NSTableView包含在NSClipView中,后者包含在NSScrollView中。NSScrollView带有边框,这样我就可以看到NSTableView的轮廓,NSTableView通过IBOutlet变量(“TableView”)连接到其父视图控制器。我想更改NSTableView的大小,据我所知,这是通过更改其封闭的NSScrollView来完成的 根据我在这里或其他地方找到的答案,我尝试了以下命令,但不起作用:

我有一个自定义视图,其中包含一个
NSTableView
。默认情况下,
NSTableView
包含在
NSClipView
中,后者包含在
NSScrollView
中。
NSScrollView
带有边框,这样我就可以看到
NSTableView
的轮廓,
NSTableView
通过
IBOutlet
变量(“TableView”)连接到其父视图控制器。我想更改
NSTableView
的大小,据我所知,这是通过更改其封闭的
NSScrollView
来完成的

根据我在这里或其他地方找到的答案,我尝试了以下命令,但不起作用:

[[[self TableView] enclosingScrollView] setFrameSize:NSMakeSize([[self TableView] enclosingScrollView].bounds.size.width, 10)];

[[[self TableView] enclosingScrollView] setFrame:NSMakeRect(0,0,[[self TableView] enclosingScrollView].bounds.size.width, 10)];

[[self TableView] setFrame:NSMakeRect(0,0,[[self TableView] enclosingScrollView].bounds.size.width, 10)];
什么是正确的命令


(OS X 11.1,XCode 7.1,Objective-C)

您使用的是自动布局吗?另外,更改表视图或滚动视图的大小,您真正想要实现什么?它们可以有不同的大小,这正是滚动视图滚动的原因。例如,表格视图可能很大,只显示相对较小的部分,用户可以垂直或水平滚动以查看更多内容。或者,表格视图可以完全放在滚动视图中,在这种情况下它不会滚动。不,我没有使用自动布局。我一直希望它们的大小相同,但我从滚动视图开始,因为它是带边框的,我可以直观地判断它的大小是否已更改。尝试将语句拆分为其组件并记录结果。例如:
NSTableView*tableView=[self tableView];NSLog(@“表视图%@”,表视图);NSScrollView*scrollView=[tableView封闭CrollView];NSLog(@“滚动视图%@”,滚动视图)。记录帧,尝试设置它,然后再次记录。最后,当你说“不起作用”时,你需要准确地解释你的预期,实际发生的事情,以及它们之间的区别。谢谢Ken。我所说的“不工作”,是指当我希望看到滚动视图时,滚动视图的大小没有任何视觉变化。您使用的是自动布局吗?另外,更改表视图或滚动视图的大小,您真正想要实现什么?它们可以有不同的大小,这正是滚动视图滚动的原因。例如,表格视图可能很大,只显示相对较小的部分,用户可以垂直或水平滚动以查看更多内容。或者,表格视图可以完全放在滚动视图中,在这种情况下它不会滚动。不,我没有使用自动布局。我一直希望它们的大小相同,但我从滚动视图开始,因为它是带边框的,我可以直观地判断它的大小是否已更改。尝试将语句拆分为其组件并记录结果。例如:
NSTableView*tableView=[self tableView];NSLog(@“表视图%@”,表视图);NSScrollView*scrollView=[tableView封闭CrollView];NSLog(@“滚动视图%@”,滚动视图)。记录帧,尝试设置它,然后再次记录。最后,当你说“不起作用”时,你需要准确地解释你的预期,实际发生的事情,以及它们之间的区别。谢谢Ken。我所说的“不工作”,是指当我期望看到滚动视图时,滚动视图的大小没有视觉变化。