Modifica del contenuto di un NSTextField tramite codice quando è focalizzato / viene modificato dall'utente
-
27-10-2019 - |
Domanda
Ho un NSSlider che aggiorna il contenuto di un NSTextField.Fin qui tutto bene.Funziona fino a quando NSTextField non è focalizzato o viene modificato dall'utente (digitando o rimanendo vuoto ecc.).
Quello che sto cercando di ottenere è forzare l'aggiornamento di NSTextField tramite codice, indipendentemente da ciò che sta facendo l'utente.
Questo è il codice dell'evento valore modificato del dispositivo di scorrimento:
-(IBAction) sliderTempoMoved: (id)sender{
[soundEngine setTempo:[sender floatValue]];
[labelTempo setStringValue:[NSString stringWithFormat:@"%0.2f%",[sender floatValue]]];
NSLog(@"slideTempoMoved: %f",[sender floatValue]);
}
Il metodo setStringValue funziona fintanto che NSTextField non viene modificato ...
Qualche indizio su questo problema ??
Saluti, Alex
Soluzione
Non so quanto sia d'aiuto, ma ho provato il tuo codice e NSTextField viene aggiornato indipendentemente dal fatto che sia in fase di modifica o meno.Controlla le tue proprietà NSTextField rispetto alle mie.Forse c'è qualcosa che impedisce l'aggiornamento.
Puoi anche provare a chiamare [labelTempo abortEditing]
prima della chiamata a setStringValue
.