2013-03-24 52 views
0

我有一個NSStatusItem這樣創建:的NSTextField不活躍NSPopover連接到NSStatusItem

statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength]; 
[statusItem setTitle:@"DS"]; 
[statusItem setHighlightMode:YES]; 
[statusItem setAction:@selector(StatusClicked:)]; 
[statusItem setTarget:self]; 

我也有一個customview酥料餅。在視圖我有文本框:http://d.pr/i/CWbr

我酥料餅是這個樣子:

- (void)StatusClicked:(id)sender { 
    [self.popover showRelativeToRect:[sender bounds] ofView:sender preferredEdge:NSMaxYEdge]; 
} 

從debuger我瞭解到,sender這裏是NSStatusBarButton類的一個實例。

的問題是,當酥料餅的爆裂聲,我不能鍵入文本框,它apears不活動:http://d.pr/i/q18U

按鈕是否工作雖然。

我認爲這個問題是在我傳遞給ofView:的視圖中。我試圖將其更改爲一個控制窗口上是這樣的:

[self.popover showRelativeToRect:[sender bounds] ofView:self.postText preferredEdge:NSMaxYEdge]; 

和TextField開始活躍(http://d.pr/i/DmTz),但我不知道爲什麼這會有所幫助。

爲什麼我的popover文本字段在從菜單中移動時變爲非活動狀態? 爲什麼按鈕有效? 如何讓文本框處於活動狀態?

P. S. 我的應用程序是Application is agent (UIElement)

回答