我将WebView放在NSPanel中,并希望它使用小滚动条。 我怎么告诉它? (不能在Interface Builder中完成)
我意识到WebView有许多不同类型的子视图,具体取决于加载的内容。但是假设我正在加载没有框架的网页。什么视图将包含主垂直滚动条?在某处有NSScrollView还是管理不同?
答案 0 :(得分:3)
文档加载到框架后,您可以访问文档的NSView
,然后访问其封闭的滚动视图,允许您将滚动条设置为您想要的大小:
- (void)loadWebView
{
webView.frameLoadDelegate = self;
[[webView mainFrame] loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://daringfireball.net"]]];
}
- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame
{
//get the scroll view that contains the frame contents
NSScrollView* scrollView = [[[[webView mainFrame] frameView] documentView] enclosingScrollView];
[[scrollView verticalScroller] setControlSize: NSSmallControlSize];
[[scrollView horizontalScroller] setControlSize: NSSmallControlSize];
}