これは単純に思えますが、不可欠です。
NSDatePicker (スタイル: グラフィカル) をウィンドウに配置し、ビルドして実行し、矢印キーを使用して移動しようとします。唯一の応答は、コンピューターからの「ディン」です。
単純なカスタム NSDatePicker サブクラスでオーバーライド-keydown
し、theEvent を出力して、対応する 123 ~ 126 の keyCode があることを確認しました。
-keydown
次に、次のように、矢印ボタンを押すたびに日付ピッカーの日付をリセットすることに遭遇しました。
- (void)keyDown:(NSEvent *)theEvent
switch ([[theEvent valueForKey:@"keyCode"] integerValue]) {
case 126:
// Take away one week from the date
self.dateValue = [NSDate dateWithTimeInterval:-604800 sinceDate:self.dateValue];
break;
.... similar for 125 - 123 ...
}
}
このメソッドを実装すると、オブジェクトをステップ実行するための「タブ」キーが不要になるという副作用があります。
これは大きな回避策のようです。日付ピッカーに既に含まれている別の方法はありますか??