Al crear el botón de bisel de Cocoa con imagen personalizada e imagen alternativa, estoy teniendo un comportamiento extraño. En estado comprimido, el fondo del botón se vuelve blanco. Estoy agregando el botón como subvista de una ventana transparente (ventana de HUD).NSButton fondo blanco al hacer clic
Estoy tratando todas las técnicas que yo sepa:
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];
también probé
[closeButton setButtonType:NSMomentaryChangeButton];
[[closeButton cell] setHighlightsBy:NSContentsCellMask];
sin resultados.
Se puede ver el comportamiento incorrecto en las imágenes adjuntas:
botón de bisel superponer una ventana HUD:
incorrecto botón de bisel de fondo: Botón
No está claro para mí cuál es esta NSWindow myWindow. ¿Es el contenedor de botones? En este caso, su contenido rect es lo que definió como NSRect rect? – loretoparisi
¿Está claro ahora? –
¡Suena genial! – loretoparisi