hitTestForEvent:inRect:ofView:
レシーバーのヒットテスト情報を返します
-(NSUInteger)hitTestForEvent:(NSEvent *)event:
inRect:(NSRect)cellFrame:
ofView:(NSView *)controlView:
解説
レシーバーのヒットテスト情報を返します。
返り値
( NSUInteger )
【Hit testing】
●NSCellHitNone
空のエリア、又はセルをヒットしていない。
10.5以降
●NSCellHitContentArea
セルの内容のエリア
10.5以降
●NSCellHitEditableTextArea
セルの編集可能テキストエリア
10.5以降
●NSCellHitTrackableArea
セルのトラック可能エリア
10.5以降
引数
( NSEvent * )event
現在のイベント
( NSRect )cellFrame
セルのフレーム
( NSView * )controlView
セルがあるコントロールビュー
フレームワーク
ApplicationKit
クラス
NSCell
使用可能
10.5
参照
例文
// // MyTextFieldCell.m // hittest // // Created by 大森智史 on 06/09/27. // Copyright 2006 Satoshi Oomori. All rights reserved. // #import "MyTextFieldCell.h" @implementation MyTextFieldCell -(void)awakeFromNib { NSLog(@"awakeFromNib"); } -(BOOL)trackMouse:(NSEvent *)theEvent inRect:(NSRect)cellFrame ofView:(NSView *)controlView untilMouseUp:(BOOL)untilMouseUp { NSUInteger ret = [self hitTestForEvent:theEvent inRect:cellFrame ofView:controlView ]; switch (ret){ case NSCellHitNone: NSLog(@"NSCellHitNone"); break ; case NSCellHitContentArea: NSLog(@"NSCellHitContentArea"); break; case NSCellHitEditableTextArea: NSLog(@"NSCellHitEditableTextArea"); break; case NSCellHitTrackableArea: NSLog(@"NSCellHitTrackableArea"); break; default: NSLog(@"default"); } return NO; } @end