ユーザがテキストフィールドを押すと、クリックイベントを処理しようとしています。どういうわけか、関数内でジャンプしていません。ここに私のコードです:アクションメソッドが動作しないOSX
class ViewController: NSViewController {
override func viewDidLoad() {
let textField2 = NSTextField(frame: CGRectMake(30, 30, 37, 17))
textField2.stringValue = "Label"
textField2.bordered = false
textField2.backgroundColor = NSColor.controlColor()
view.addSubview(textField2)
textField2.action = #selector(myAction)
}
func myAction(sender: NSView)
{
print("aktuell: \(sender)")
currentObject = sender
}
}
私はそれが関数内でジャンプしていません。 誰かが関数にテキストフィールドをリンクする方法を知っていますか?他のコントロール(ボタンなど)もリンクされているため、その関数でなければならないことに注意してください。
はい、すべてのテキストフィールドを1つの方法にリンクできますか? – Anokrize
また、アクションメソッドの送信者のようなテキストフィールドのインスタンスを取得する必要があります。 – Anokrize
はい。デリゲートメソッドを見ると、最初のパラメータは常にアクションが取られているtextFieldです。だから、作成したテキストフィールド変数を参照しないで、デリゲートメソッドに渡された変数を使用します。 – Gargoyle