2011-09-11 7 views
6

Xcode 4.1でプロジェクトを作成し、MainMenu.xibに2つのNSPanelを設定し、両方のパネルにNSTextFieldを設定した場合、Nscanelの1つを「タイトルバー」を表示しないように設定すると、そのパネルをクリックしたりフォーカスを当てたりすることはできません。"タイトルバー"が表示されないように設定されていると、NSPanelでフォーカスを取得できないのはなぜですか?

なぜですか?

答えて

9

タイトルバーのないウィンドウ(またはパネル)はキーになることができないため、フォーカスを取得できません。サブクラス化してメソッドをオーバーライドする必要があります。

@interface MyPanel : NSPanel 
@end 

@implementation MyPanel 

- (BOOL)canBecomeKeyWindow { 
    return YES; 
} 

@end 
+0

ありがとう、ただ修正しました。 – Nickkk

+0

クイックとポイント。 :) –