2009-08-24 6 views
14

Die Äpfel Human Interface Guidelines sagen:ausblenden Tasten von titlebar in Cocoa

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

Wie mache ich das erste titlebar in diesem Bild (mit nur einer close-Taste). Durch das Deaktivieren von "Größe ändern" und "Minimieren" in IB werden nur die Größenänderungs-/Minimierungsschaltflächen deaktiviert. Aber ich möchte, dass sie verschwinden. Wie kann ich das machen?

Vielen Dank im Voraus.

Antwort

36

Ich glaube, das sollte funktionieren:

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

Und auch '[[Fenster standardWindowButton : NSWindowCloseButton] setHidden: YES]; 'zu h den Schließen-Button (falls angezeigt). – Beny

+0

@pkamb Benötigen Sie Hilfe, um im Vollbildmodus zurückzukehren – AJit

+0

Perfekt, genau das, was ich suchte, als ich versuchte, ein Interface wie Quicktime Player zu erstellen. –

0

einen anderen Weg ...

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

Können Sie Ihre Antwort ein wenig ausarbeiten? Ich meine warum und wie es sich unterscheidet. – Fawzan

+0

@ Fawzan, kann diese Art und Weise auf benutzerdefinierte Titelansicht gelten. – csaint

3

Für Swift

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

setHidden

+0

funktioniert nicht (auf xcode 9.2) ... der title und der close, miniaturizeButton, fullscreen buttons sind immer noch da. – themihai