我将 progressindicator 从 main.xib 拖放到 webview 上。
我需要在 webview 上显示 NSProgressIndicator ,而不是在同一个 webview 上显示。
主要思想是阻止最终用户访问 webview,直到并且除非 NSProgressIndicator.stopAnimation(self) 完成。
有人可以帮我解决这个问题。
我将 progressindicator 从 main.xib 拖放到 webview 上。
我需要在 webview 上显示 NSProgressIndicator ,而不是在同一个 webview 上显示。
主要思想是阻止最终用户访问 webview,直到并且除非 NSProgressIndicator.stopAnimation(self) 完成。
有人可以帮我解决这个问题。
//为了在 appdelegate.swift 上显示一个模型面板,我们需要//遵循两个步骤。
//step1: 从 NSWindowController 创建一个 cocoa 类,如下所示。
进口可可
类 ManuModalController: NSWindowController { @IBOutlet 弱 var progressIndicator1: NSProgressIndicator!
var mainW: NSWindow = NSWindow()
override init()
{
super.init()
}
override init(window: NSWindow!)
{
super.init(window: window)
}
required init?(coder: (NSCoder!))
{
super.init(coder: coder);
}
override func windowDidLoad()
{
super.windowDidLoad()
}
func beginSheet(mainWindow: NSWindow)
{
self.mainW = mainWindow;
NSApp.beginSheet(self.window!, modalForWindow: self.mainW, modalDelegate: self, didEndSelector:nil, contextInfo: nil);
progressIndicator1.startAnimation(self);
}
@IBAction func btnClicked(sender: AnyObject)
{
self.endSheet();
}
func endSheet()
{
NSApp.endSheet(self.window!);
self.window!.orderOut(mainW);
}
}
//step2 : 在appdelegate.swift中创建modalcontroller对象如下
var mdlwin = ManuModalController(windowNibName: "ManuModalController");
mdlwin.beginSheet(self.window);//显示模态面板 mdlwin.endSheet(); //关闭模态面板