Mein Ziel ist es, eine Referenz von der Schaltfläche, dem Label oder dem Textfeld innerhalb einer Variablen zu sichern. Das Problem ist, dass ich nicht weiß, auf welche Kontrolle der Benutzer geklopft hat. Ich habe eine einfache Anwendung, die wie folgt aussieht:Referenz auf aktuelles Objekt abrufen
Der Benutzer hat keine Steuer berühren kann.
Es ist einfach genug mit nur diesen drei Kontrollen, weil ich eine Aktion ziehen kann. Aber wenn ich viele davon habe, kann ich nicht mit ihnen umgehen. Gibt es einen allgemeinen Weg, wie ich einen Verweis auf das Steuerelement in einer Variablen sichern kann, damit ich weiß, welches der Steuerelemente aktiv ist?
bearbeiten
Wie schlug ich eine Funktion verwende und die Variable auf den Absender der Funktion zuweisen. Dies ist, wie es aussieht, ist in Code:
var currentObject: NSTextField!
override func viewDidLoad() {
super.viewDidLoad()
myTextfield.action = #selector(myAction)
}
func myAction(sender: NSTextField)
{
print("aktuell: \(sender)")
currentObject = sender
}
Wie Sie das funktioniert nur für einen NSTextField sehen können. Gibt es eine Möglichkeit, wie die Funktion für jede Steuerung funktioniert?
Danke für die Antwort. Bitte sieh dir meinen Schnitt an, weißt du, wie das zu lösen ist? – Anokrize
Wenn Sie wirklich keine weiteren Informationen über das Objekt benötigen, können Sie Ihre Funktion als 'func myAction (sender: AnyObject) 'definieren und dann alle Elemente auf diese ziehen. – sschale
Ja, aber das Problem ist, dass ich auf diese Weise nicht auf die CurrentObject.frame zugreifen kann, die ich später verwenden muss – Anokrize