Как изменить цвет фона пользовательского NSView с пользовательским цветом [дубликат]

Если это происходит в тестовом классе, убедитесь, что вы не забыли аннотировать класс.

Например, в Spring Boot:

@RunWith(SpringRunner.class)
@SpringBootTest
public class MyTests {
    ....
1
задан Vladimir 27 May 2011 в 09:41
поделиться

3 ответа

Если я правильно помню, вам будет нужен диапазон 0-1 как ваш RGB

3
ответ дан Dave F 22 August 2018 в 15:18
поделиться

Как указано в документации:

Значения ниже 0.0 интерпретируются как 0.0, а значения выше 1.0 интерпретируются как 1.0

Это означает, что ваш значения (100, 100, 100) будут преобразованы в (1.0,1.0,1.0), что является белым. Вам нужно преобразовать каждое значение канала, используя следующее уравнение:

100: 255 = x: 1.0 => x = 100/255

где x - это значение, которое вы будет использоваться для метода

-(NSColor*)colorWithDeviceRed:CGFloat red green:CGFloat green blue:CGFloat blue alpha:CGFloat alpha];

В вашем коде должно быть что-то подобное

[NSColor colorWithDeviceRed:100.0/255.0 green:100.0/255.0 blue:100.0/255.0 alpha:1.0];
1
ответ дан singingAtom 22 August 2018 в 15:18
поделиться

Компоненты NSColor имеют значения в [0..1], поэтому вы должны нормализовать значения, которые у вас есть, например:

NSColor * myColor = [NSColor colorWithDeviceRed:100.0/255 green:100.0/255 blue:100.0/255 alpha:1.0];

Если вы попытаетесь установить значения, превышающие 1, на цветные компоненты, re интерпретируется как 1, поэтому ваш код будет фактически эквивалентен

NSColor * myColor = [NSColor colorWithDeviceRed:1.0 green:1.0 blue:1.0 alpha:1.0];

, который создает белый цвет.

3
ответ дан Vladimir 22 August 2018 в 15:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: