我确实创建了NSTableView,但这不会显示在NSWindow上。代码示例:
NSTableView *tbl = [[NSTableView alloc] initWithFrame:NSMakeRect(0,0,500,500)];
[window.contentView addSubview:tbl];
P.S。 我需要在没有IBOutlets的情况下进行应用
答案 0 :(得分:1)
该代码是正确的。确保您已创建或加载了窗口(即window
不是nil
),并且您已为其指定了内容视图(window.contentView
不是nil
)。
另外,不要忘记发布tbl
。
答案 1 :(得分:0)
尝试:
NSTableView *tbl = [[NSTableView alloc] initWithFrame:NSMakeRect(0,0,500,500)];
[window setContentView:tbl];
[tbl release];
假设您的window
对象不是nil
并且您已正确初始化它。
更新:有关NSWindow
可见的信息,请参阅here;具体是:
打开一个窗口 - 即使窗口可见 - 通常是通过调用其中一个方法makeKeyAndOrderFront:,orderFront:
将窗口放入应用程序的窗口列表中来完成的。
因此,在上面的代码之后,添加以下内容以使窗口可见:
[window makeKeyAndOrderFront:self];
答案 2 :(得分:-1)
为什么不使用uitableview? 它是表格视图的标准类。
UITableView * tbl = [[[UITableView alloc] initWithFrame:NSMakeRect(0,0,500,500)] autorelease]; [window.contentView addSubview:tbl]; [window makeKeyAndVisible];