从AppleScriptObjC中的面板制作工作表

时间:2013-04-26 22:29:50

标签: xcode macos cocoa applescript-objc cocoa-sheet

好吧,我正在尝试根据我在“Interface Builder”.xib文件中设计的面板,在AppleScriptObjC应用程序中显示一个工作表。

我找到了一个很棒的答案here,但它适用于Objective-C,我很难将其翻译成AppleScriptObjC。

这是我目前尝试过的代码: beginSheet_modalForWindow_modalDelegate_didEndSelector_contextInfo_(loadingWindow, mainWindow, me, missing value, missing value)

这只会给我以下错误:

[AppDelegate titleRefresh:]: *** -[AppDelegate beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:]: unrecognized selector sent to object <AppDelegate @0x10323d4c0: OSAID(4)> (error -10000)

原始窗口称为“mainWindow”,用作工作表的面板称为“loadingWindow”。

如果有人能帮助我,那将非常感激!

1 个答案:

答案 0 :(得分:1)

好的,看起来我已经成功解决了这个问题。对于有此问题的其他人:

您需要使用以下代码:

current application's NSApp's beginSheet_modalForWindow_modalDelegate_didEndSelector_contextInfo_(loadingWindow, mainWindow, me, missing value, missing value)

...您要用作工作表的面板为loadingWindow,主窗口(工作表将显示在其上)为mainWindow

同样,您可以使用以下代码关闭工作表:

current application's NSApp's endSheet_(loadingWindow)
loadingWindow's orderOut_(loadingWindow)

我希望这可以帮助那里的人! :)