Ответ 1
Я знаю, что этот ответ немного запоздал, но вы можете попробовать это, учитывая thisButton
:
[thisButton setImage:[NSImage imageNamed:NSImageNameStopProgressFreestandingTemplate]];
[thisButton setImagePosition:NSImageOnly];
[thisButton setBordered:NO];
Последняя строка - это бит ключа: удаление границы кнопки эффективно перекрывает ее рамку, оставляя только изображение, на которое нужно щелкнуть. (Кстати, я не пробовал этот код специально, поэтому вам может потребоваться несколько других настроек, таких как установка imageScaling
или buttonType
, чтобы он работал лучше всего.)
Последнее замечание: если вы используете образ шаблона (как вы сказали, вы бы), Cocoa автоматически отобразит его с небольшим темно-серым градиентом; при нажатии кнопки он на мгновение будет затемнен до черного. Это автоматический "кнопочный" взгляд", который вам не нужен; однако он очень тонкий и является хорошим индикатором того, что кнопка работает. Если вы не хотите, чтобы это произошло, вы можете получить экземпляр желаемого изображения и [stopImage setTemplate:NO];
на нем.