相关疑难解决方法(0)

单击时NSButton白色背景

当使用自定义图像和替代图像创建Cocoa斜角按钮时,我有一种奇怪的行为.在按下状态下,按钮背景变为白色.我将按钮添加为透明窗口(HUD窗口)的子视图.

我正在尝试我所知道的每一项技巧:

NSButton *closeButton = [[NSButton alloc] initWithFrame:NSMakeRect(0.0, 0.0, 30.0, 30.0)];
        [closeButton setFrameOrigin:NSMakePoint(0.0, 0.0)];
        [closeButton setImagePosition:NSImageOnly];
        [closeButton setAction:@selector(closeWindowAction:)];
        [closeButton setBordered:NO];
        [closeButton setTransparent:NO];

        [closeButton setImage:[NSImage imageNamed:@"icon-tclose-off"]];
        [closeButton setAlternateImage:[NSImage imageNamed:@"icon-tclose-on"]];
        [closeButton setBezelStyle:NSShadowlessSquareBezelStyle];
        [closeButton setButtonType:NSMomentaryLightButton];

        //[[closeButton cell] setBackgroundColor:[NSColor clearColor]];
        [[closeButton cell] setHighlightsBy:NSChangeBackgroundCellMask|NSCellLightsByContents];
        //[[closeButton cell] setHighlightsBy:NSContentsCellMask];
        //[[closeButton cell] setShowsStateBy:0|NSContentsCellMask];
Run Code Online (Sandbox Code Playgroud)

我也试过了

[closeButton setButtonType:NSMomentaryChangeButton];

[[closeButton cell] setHighlightsBy:NSContentsCellMask];
Run Code Online (Sandbox Code Playgroud)

没有结果.

您可以在附加的屏幕截图中看到错误的行为:

斜角按钮覆盖HUD窗口:
斜角按钮覆盖HUD窗口

错误的斜角按钮背景:
错误的斜角按钮背景

cocoa nsbutton nsbuttoncell

8
推荐指数
2
解决办法
6584
查看次数

NSButton的图像在选择上失去了透明度

我在Mac OS X应用程序中编辑了一些NSButton并为它们设置了自定义图像.图像采用png格式,具有透明度.当我选择一个按钮时,图像的背景变为白色.

有谁知道解决这个问题的方法?

cocoa nsbutton

5
推荐指数
1
解决办法
1928
查看次数

标签 统计

cocoa ×2

nsbutton ×2

nsbuttoncell ×1