Alterar o conteúdo de um NSTextField via código quando ele é focado / editado pelo usuário

StackOverflow https://stackoverflow.com/questions/7334298

Pergunta

Eu tenho um NSSlider que atualiza o conteúdo de um NSTextField.Por enquanto, tudo bem.Funciona desde que o NSTextField não seja focado ou seja editado pelo usuário (digitando ou permanecendo em branco etc.).

O que estou tentando fazer funcionar é forçar a atualização do NSTextField via código, não importa o que o usuário esteja fazendo.

Este é o código do evento de valor alterado do controle deslizante:

-(IBAction) sliderTempoMoved: (id)sender{
[soundEngine setTempo:[sender floatValue]];

[labelTempo setStringValue:[NSString stringWithFormat:@"%0.2f%",[sender floatValue]]];
 NSLog(@"slideTempoMoved: %f",[sender floatValue]);
}

O método setStringValue funciona desde que o NSTextField não seja editado ...

Alguma pista sobre este problema ??

Atenciosamente, Alex

Foi útil?

Solução

Não sei o quanto isso é útil, mas tentei seu código e o NSTextField é atualizado, esteja ou não sendo editado.Compare suas propriedades NSTextField com as minhas.Talvez algo esteja impedindo que seja atualizado.

Você também pode tentar chamar [labelTempo abortEditing] antes da chamada para setStringValue.

NSTextField Properties

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top