NSCollectionView でダブルクリックをプログラムに認識させようとしています。このガイドに従ってみました: http://www.springenwerk.com/2009/12/double-click-and-nscollectionview.htmlしかし、IconViewBox のデリゲートが null であるため、実行しても何も起こりません:
h ファイル:
@interface IconViewBox : NSBox
{
IBOutlet id delegate;
}
@end
m ファイル:
@implementation IconViewBox
-(void)mouseDown:(NSEvent *)theEvent {
[super mouseDown:theEvent];
// check for click count above one, which we assume means it's a double click
if([theEvent clickCount] > 1) {
NSLog(@"double click!");
if(delegate && [delegate respondsToSelector:@selector(doubleClick:)]) {
NSLog(@"Runs through here");
[delegate performSelector:@selector(doubleClick:) withObject:self];
}
}
}
デリゲートが null であるため、2 番目の NSLog は出力されません。nib ファイルのすべてを接続し、指示に従いました。これを行う理由または別の理由を誰かが知っていますか?