2009-08-24 7 views
14

Les pommes Human Interface Guidelines disent:Masquer les boutons de la barre de titre à Cocoa

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

Comment puis-je faire la première barre de titre dans cette image (avec seulement un gros bouton). La désactivation de "Redimensionner" et "Réduire" dans IB ne fait que désactiver les boutons de redimensionnement/réduction. Mais je veux qu'ils disparaissent. Comment puis je faire ça?

Merci d'avance.

Répondre

36

Je crois que cela devrait fonctionner:

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

Et '[fenêtre [standardWindowButton : NSWindowCloseButton] setHidden: YES]; 'à h ide le bouton de fermeture (si affiché). – Beny

+0

@pkamb Besoin d'aide pour repartir en mode plein écran – AJit

+0

Parfait, exactement ce que je cherchais en essayant de créer une interface comme le lecteur Quicktime. –

0

est une autre façon ...

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

Pouvez-vous élaborer votre réponse un peu? Je veux dire pourquoi et comment cela diffère. – Fawzan

+0

@Fawzan, de cette façon peut s'appliquer à la vue du titre personnalisé. – csaint

3

Pour Swift

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

setHidden

+0

ne fonctionne pas (sur xcode 9.2) ... le titre et la fermeture, miniaturizeButton, les boutons plein écran sont toujours là. – themihai