在菜单视图中以编程方式选择文本

时间:2011-07-11 09:18:24

标签: objective-c cocoa nstextfield

我写了一个“代理”Cocoa应用程序,我在状态图标的菜单中有TextField,它看起来像这样:

http://s3.ifotos.pl/img/Zrzut-ekr_hwaqnwa.png

在几个地方我以编程方式选择其内容(例如 - (BOOL)成为我的NSTextField子类的FirstRirstResponder)

它不起作用。它确实与它在菜单中的事实有关,而不是在窗口中。但是我该如何解决这个问题?

提前感谢很多

2 个答案:

答案 0 :(得分:2)

因为您的视图位于菜单中,所以文本字段可能没有响应,因为运行循环不是默认模式。尝试像这样调用selectText:

[textField performSelector:@selector(selectText:) withObject:nil 
afterDelay:0.0 inModes:[NSArray arrayWithObject:NSRunLoopCommonModes]];

答案 1 :(得分:1)

为什么不用一个窗口呢?菜单是作为引擎盖下的窗口实现的:您可以做同样的事情,只需适当地定位和设置窗口样式。

编辑:回答大部分改写