1
property myValue : ""
property myPopUp : missing value
on applicationWillFinishLaunching_(aNotification)
    tell standardUserDefaults() of current application's NSUserDefaults
        registerDefaults_({myValue:myValue})
        set myValue to objectForKey_("myValue") as text
    end tell
    myPopUp's selectItemAtIndex_(myValue - 1)
end applicationWillFinishLaunching_
on myButtonHandler_(sender)
    set myValue to (myPopUp's indexOfSelectedItem) + 1 -- This line may be mistake
end myButtonHandler_
on applicationShouldTerminate_(sender)
    tell standardUserDefaults() of current application's NSUserDefaults
        setObject_forKey_(myValue, "myValue")
    end tell
    return current application's NSTerminateNow
end applicationShouldTerminate_

このコードを書きましたが、次のデバッグ エラーが発生します。

 (Project Name)[42733:303] *** -[AppDelegate myButtonHandler:]: Can’t make «class ocid» id «data optr00000000C7FFFFFFFFFFFFFF» into type number. (error -1700)

コードを修正する方法を教えてもらえますか? エラーを回避するにはどうすればよいですか?

4

1 に答える 1

2

私はこの問題を自分で解決しました。

property myValue : ""
property myPopUp : missing value
on applicationWillFinishLaunching_(aNotification)
    tell standardUserDefaults() of current application's NSUserDefaults
        registerDefaults_({myValue:myValue})
        set myValue to objectForKey_("myValue") as text
    end tell
    myPopUp's selectItemAtIndex_(myValue - 1)
end applicationWillFinishLaunching_
on myButtonHandler_(sender)
    set myValue to (myPopUp's indexOfSelectedItem()) + 1 --Here is the mistake
end myButtonHandler_
on applicationShouldTerminate_(sender)
    tell standardUserDefaults() of current application's NSUserDefaults
        setObject_forKey_(myValue, "myValue")
    end tell
    return current application's NSTerminateNow
end applicationShouldTerminate_

indexOfSelectedItem() と書くべきでしたが、indexOfSelectedItem と書きました。

于 2013-08-19T22:59:53.363 に答える