2016-11-21 13 views
0

Итак, у меня есть NSView, в котором я создал программные кнопки без рамки.Прозрачный NSButton, показанный с нежелательным backgroundColor

Хотя я установил их свойство backgroundColor в нужный цвет, они появляются, как будто они имеют более темный оттенок.

How could this be happening?

+0

А вы уверены, что это не цвет вы ожидаете? Попробуйте использовать Digital Color Meter.app (встроенный macOS), чтобы проверить цвет, чтобы увидеть, не введены ли значения RGB. Цветовое пространство также актуально, возможно, оно отличается от того, что вы ожидаете –

+0

Спасибо за ваш комментарий! Учитывая то, что вы говорите, это может быть что-то большее, что мне нужно иметь дело, относительно свойства backgroundColor экземпляра NSButton. Я также использую NSLabel под названием «Выбрать устройство», для которого я также установил, что цвет фона совпадает с изображением. У меня проблем нет. –

+0

Попробуйте установить «backgroundColor» для кнопки «белый», что вы видите? –

ответ

0

здесь Как я хотел бы сделать это, как я уже говорил в комментарии. Пользовательский вид подключен как iboutlet и задан зеленый цвет. Ярлык по умолчанию не имеет заднего фона. Кнопка не имеет границы и типа Round Rect, как вы видите на снимке экрана. Синий цвет вокруг кнопки - это выбор/активный элемент управления, но вы также можете избавиться от этого.

self.testBtn.focusRingType = NSFocusRingTypeNone; 

enter image description here

редактировать добавить новое изображение показывает прокрутки: enter image description here

+0

Хорошо, спасибо за ваш ответ. Я также должен поместить NSView внутри NSScrollView, и это заставляет проблему снова появиться. Любые предложения? –

+0

Я обновил свой ответ. Я просто поместил этот вид внутрь прокрутки и ничего не изменил. и он прокручивается в тонкой цветовой гамме или вообще. –

0

// установить цвет фона

button.backgroundColor=[UIColor clearColor] 

// затем установите Оттенок цвета кнопки

[btn setTintColor:[UIColor clearColor]]; 
0

Я гость, который является фоном Label not of Button, который не появляется, когда пользователи предпочитают уменьшать прозрачность в Системных настройках.

В этом случае, я решил с помощью этой строки кода:

myButton.appearance = NSAppearance(named: .aqua)