Как я могу получить значение внутри NSTextField? - PullRequest
0 голосов
/ 05 января 2011

Мой NSTextField содержит двойные значения, такие как «1,67» или «0,05» и т. Д.

Когда я пытаюсь сделать следующее:

console.log([priceChange doubleValue]); //priceChange is an NSTextField

    //Apply styles
    if([priceChange doubleValue] > 0)
        [priceChange setTextColor:[NSColor greenColor]];
    else if([priceChange doubleValue] < 0)
        [priceChange setTextColor:[NSColor redColor]];
    else if([priceChange doubleValue] == 0)
        [priceChange setTextColor:[NSColor blackColor]];

priceChange всегда равен 0, даже если значение является чем-то другим. Как я могу правильно получить значение priceChange?

Ответы [ 2 ]

0 голосов
/ 05 января 2011

Это именно то, для чего NSNumberFormatter. Дайте вашему полю подходящий форматер (его легко добавить / настроить в IB), и -objectValue начнет возвращать NSNumber.

0 голосов
/ 05 января 2011

Попробуйте [[priceChange stringValue] floatValue]. Также убедитесь, что перед числом в строке нет ничего, кроме пробелов, иначе floatValue вернет 0.

...