我有一个包含多列的NSTableView.单击每个列按列排序,如iTunes中所示.但是,当tableview首次加载时,行未排序,并且没有突出显示表列或显示向上/向下指示符图像.我想知道是否有一个简单的方法,我可以编程设置列排序表,并在启动时设置指标图像.
我能想到的唯一解决方案是使用[NSTableView setIndicatorImage:inTableColumn:]和[NSTableView setHighlightedColumn:],但这使得点击标题不会突出显示列.我宁愿不必使用tableView:mouseDownInHeaderOfTableColumn:并重写标题上的整个点击以对事物进行排序.
您可以尝试设置排序描述符.
- (void)setSortDescriptors:(NSArray *)array
- (void)windowControllerDidLoadNib:(NSWindowController *) windowController
{
[super windowControllerDidLoadNib:windowController];
NSSortDescriptor* sortDescriptor = [[[NSSortDescriptor alloc] initWithKey: @"order" ascending: YES] autorelease];
[oTable setSortDescriptors:[NSArray arrayWithObject:sortDescriptor]];
}
Run Code Online (Sandbox Code Playgroud)
http://lists.apple.com/archives/cocoa-dev/2006/May/msg01434.html
| 归档时间: |
|
| 查看次数: |
3481 次 |
| 最近记录: |