• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Wir haben den Frühjahrsputz beendet, Ihr auch? Welches Foto zu dem Thema hat Euch dann am Besten gefallen? Hier geht es lang zur Abstimmung --> Klick

NSNotification bestimmtes Textfield

moritzmoritz

Erdapfel
Registriert
04.03.13
Beiträge
4
Hallo Community,

habe direkt noch eine Frage ... und zwar habe ich folgenden Code:

Code:
- (void) controlTextDidChange:(NSNotification *)obj {
[COLOR=#430581]    if([[obj userInfo] objectForKey:@"loginPassword"]) {[/COLOR]
        NSLog(@"jo!");
    }
}

Der Delegate von dem NSTextfield mit dem Identifier "loginPassword" ist auf den Controller und das funktioniert auch, wenn ich den Text in dem Textfeld änder. Jetzt möchte ich zwei Dinge machen: erstens überprüfen welches Textfield geklickt wurde .. wie kriege ich diese Information von meinem obj? Zweitens möchte ich überprüfen, ob "Enter" gedrückt wurde .. weil ich dadurch den Loginprozess auslösen möchte.

EDIT: erstes Problem gelöst:
Code:
if([obj object] == _loginPassword) {
        NSLog(@"jo!");
}
Moritz
 
Zuletzt bearbeitet:

Marcel Bresink

Hadelner Sommerprinz
Registriert
28.05.04
Beiträge
8.574
Dazu würde man normalerweise überhaupt keinen Delegate mit Notification verwenden, sondern man verbindet das NSTextField entweder mit einer Action-Methode, die automatisch aufgerufen wird, wenn der Benutzer die Eingabe im Feld abschließt, oder man definiert ein Binding auf einen String und fügt der setter-Methode, die diesen String ändert, den Aufruf hinzu.

Für ein Kennwort würde man übrigens auch kein NSTextField, sondern ein NSSecureTextField verwenden.