2009-08-24 13 views
14

Las Manzanas Human Interface Guidelines dicen:Ocultar botones de la barra de título en Cocoa

alt text http://developer.apple.com/documentation/userexperience/Conceptual/AppleHIGuidelines/art/wn_panelcontrols.jpg

¿Cómo hago la primera barra de título en esa imagen (con solo un cierre de botón). Deshabilitar tanto 'Cambiar tamaño' como 'Minimizar' en IB solo hace que los botones de cambiar tamaño/minimizar se deshabiliten. Pero quiero que desaparezcan. ¿Cómo puedo hacer eso?

Gracias de antemano.

Respuesta

36

Creo que esto debería funcionar:

[[window standardWindowButton:NSWindowCloseButton] setHidden:YES]; 
[[window standardWindowButton:NSWindowMiniaturizeButton] setHidden:YES]; 
[[window standardWindowButton:NSWindowZoomButton] setHidden:YES]; 
+2

Y también '[[ventana standardWindowButton : NSWindowCloseButton] setHidden: YES]; 'a h ide el botón de cerrar (si se muestra). – Beny

+0

@pkamb Necesito ayuda para volver atrás en pantalla completa – AJit

+0

Perfecto, exactamente lo que estaba buscando al intentar crear una interfaz como Quicktime Player. –

0

otra manera es ...

for (id subview in [self window].contentView.superview.subviews) { 
    if ([subview isKindOfClass:NSClassFromString(@"NSTitlebarContainerView")]) { 
     NSView *titlebarView = [subview subviews][0]; 
     for (id button in titlebarView.subviews) { 
      if ([button isKindOfClass:[NSButton class]]) { 
       [button setHidden:YES]; 
      } 
     } 
    } 
} 
+0

¿Puede elaborar su respuesta un poco? Me refiero a por qué y cómo difiere. – Fawzan

+0

@Fawzan, de esta manera se puede aplicar a la vista de título personalizada. – csaint

3

Para Swift

window!.standardWindowButton(.miniaturizeButton)!.isHidden = true 
window!.standardWindowButton(.zoomButton)!.isHidden = true 
window!.standardWindowButton(.closeButton)!.isHidden = true 

setHidden

+0

no funciona (en xcode 9.2) ... el título y los botones de pantalla completa, miniaturizeButton, todavía están allí. – themihai

Cuestiones relacionadas