我正在学习一些 obj-c,因此我正在构建一个小型可可应用程序。
从 MainMenu.xib 我在顶部的“主菜单”中添加了一个菜单。单击时,这会触发一个 IBAction,它会打开一个窗口实例,在本例中是一个用于管理类别的窗口。
这个分类窗口有一个 NSWindowController,看起来像这样:
// CategoriesWindow.h
#import <Cocoa/Cocoa.h>
@interface CategoriesWindow : NSWindowController
-(IBAction)OpenCategoriesWindow:(id)sender;
@end
// CategoriesWindow.m
#import "CategoriesWindow.h"
@implementation CategoriesWindow
-(IBAction)OpenCategoriesWindow:(id)sender
{
CategoriesWindow *Categories = [[CategoriesWindow alloc] initWithWindowNibName:@"CategoriesWindow"];
[Categories showWindow:self];
}
@end
为此,我有一个带有 NSTableView 的 CategoriesWindow.xib,它可以做一些事情,所以我有一个 CategoryTableController.h 和 .m 来处理这个表的数据。当我点击一个按钮时,我希望它做很多事情,然后我希望窗口自行关闭。也就是说,我希望此窗口从 CategoryTableController.m 中的 IBAction 自行关闭。
我该怎么做呢?这个设置的一个坏事(从某处的教程中得到......)是我可以通过单击菜单按钮打开这个窗口的许多实例。
任何提示或想法从哪里开始?