2012-09-28 22 views
0

我試圖在空格鍵被擊中時在HH:MM:SS中記錄時間。我發現在我的研究中,使用可可然後基礎更容易,因爲可可有一個NSEvent類,可以感知關鍵擊。有一個類似的問題被問及如何感知雙重空格鍵的打擊,但它不能滿足如何將這個背景與我的程序聯繫起來。當空格鍵擊中日誌時間

下面的代碼:

NSDate *startTime = [NSDate date ]; 
NSTimeInterval elaspedTime = [startTime timeIntervalSinceNow]; 

-(void)sendEvent:(NSEvent *) theEvent{ 
    NSString* spaceBarPressed = [ theEvent characters ]; 
    if([spaceBarPressed isEqualToString:@"" ]){ 
     if(theEvent.type == NSKeyDown) 
      NSLog(@"Space bar hit"); 
    } 
} 
+1

對不起,我不太明白你的問題 - 什麼是你遇到的麻煩? – Tim

回答

7

它可以這樣做:

- (void)keyDown:(NSEvent *)theEvent { 

    if ([theEvent keyCode] == 49) { //Spacebar keyCode is 49 
     NSLog(@"Time is: %@", [NSDateFormatter localizedStringFromDate:[NSDate date] dateStyle:NSDateFormatterNoStyle timeStyle:NSDateFormatterMediumStyle]); 
    } 
} 
+0

太好了,非常感謝! –

+1

@cocoacoder不客氣,很高興爲您提供幫助。 –