【发布时间】:2012-04-10 08:23:16
【问题描述】:
我开始为我的 Notes-Website 制作 Mac 应用程序。此应用程序基于菜单栏中的弹出窗口。在弹出框内我有一个文本字段,但它虽然已激活但不可编辑。例如,右键单击粘贴是可行的...如何使此弹出框具有交互性?目前按键时只有mac os的错误提示音。
感谢您的帮助!
Code:
- (void)awakeFromNib
{
active = false;
statusItem = [[NSStatusBar systemStatusBar]
statusItemWithLength:NSVariableStatusItemLength];
[statusItem setHighlightMode:YES];
[statusItem setTitle:[NSString
stringWithString:@"test"]];
[statusItem setEnabled:YES];
[statusItem setToolTip:@"test"];
[statusItem setAction:@selector(StatusClicked:)];
[statusItem setTarget:self];
}
- (void)StatusClicked:(id)sender {
if(!active) {
[[self popover] showRelativeToRect:[sender bounds] ofView:sender preferredEdge:NSMaxYEdge];
active = true;
}
else {
[popover close];
active = false;
}
}
视图包含一个简单的多行文本 NSTextField。
如果使用弹出框无法实现,还有其他实现这一点的可能性吗?哪些元素是例如FaceTab(Facebook 的菜单栏)使用,因为那里的文本字段是可编辑的。
【问题讨论】:
-
您不需要做任何特别的事情来使其具有交互性。您需要向我们提供更多有关您如何制作弹出框及其视图的信息。
-
好的,我改了问题,加了代码。
-
这对我来说似乎是一个错误。看看其他人是否见过这种行为会很有趣。我将您的代码复制到了一个带有弹出框(带有按钮、弹出按钮和文本字段)的测试项目中。弹出框及其所有控件在附加到我的窗口时工作正常,但文本字段显示了您在将弹出框附加到状态栏项目时描述的行为 - 其他控件工作正常。
-
是的,弹出框内的控件(按钮)工作正常。我只想创建一个菜单栏应用程序,它显示一个列表或一个用于记笔记的文本字段。它应该像popover一样,还有其他实现这一点的可能性吗?哪些元素是例如FaceTab(Facebook 的菜单栏)使用,因为那里的文本字段是可编辑的。
标签: objective-c xcode popover