2010-12-08 43 views
1

Je dispose d'une fenêtre ne contenant aucune des fenêtres fournies par le système d'exploitation, mais d'une barre de titre basée sur un NSView. Ce n'est pas un problème jusqu'à ce que je veux afficher une feuille - la feuille sort de la première ligne de pixels de la fenêtre, et pas sous la barre de titre, comment ils devraient être. (Je m'attendais à ceci, pour être honnête.)Décalage de l'emplacement des NSSheets de 23 pixels

La vraie question ici est la suivante: comment puis-je obtenir les feuilles pour commencer à 23 pixels du haut de la fenêtre, si possible du tout? Si ce n'est pas possible, quelles alternatives y aurait-il?

Répondre

3

Mettre en oeuvre cette méthode NSWindowDelegate:

- (NSRect)window:(NSWindow *)window willPositionSheet:(NSWindow *)sheet usingRect:(NSRect)rect 
+0

Alors, je voudrais juste mettre cela dans mon NSWindow code de classe, et de définir dans le fichier d'en-tête, ou aurais-je besoin de faire une nouvelle classe pour tout cela? –

+0

Peu importe, j'ai remarqué que je devais régler [self setDelegate: self] pour que cela fonctionne. Merci! –