macOS/iOS API解説

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。2010年代に書かれた内容です。今後更新はありません。

目次

currentEvent

INDEX>AppKit>NSApplication

現在のイベントを返します

Swift4.2

open var currentEvent: NSEvent? { get }

Objective-C

@property(readonly, strong) NSEvent *currentEvent

解説

現在のイベントを返します。

イベントタイプ
case leftMouseDown
case leftMouseUp
case rightMouseDown
case rightMouseUp
case mouseMoved
case leftMouseDragged
case rightMouseDragged
case mouseEntered
case mouseExited
case keyDown
case keyUp
case flagsChanged
case appKitDefined
case systemDefined
case applicationDefined
case periodic
case cursorUpdate
case scrollWheel
case tabletPoint
case tabletProximity
case otherMouseDown
case otherMouseUp
case otherMouseDragged
case gesture
case magnify
case swipe
case rotate
case beginGesture
case endGesture
case smartMagnify
case quickLook
pressure
case directTouch

leftMouseDown
leftMouseUp
rightMouseDown
rightMouseUp
mouseMoved
leftMouseDragged
rightMouseDragged
mouseEntered
mouseExited
keyDown
keyUp
flagsChanged
appKitDefined
systemDefined
applicationDefined

        case periodic

        case cursorUpdate

        case scrollWheel

        case tabletPoint

        case tabletProximity

        case otherMouseDown

        case otherMouseUp

        case otherMouseDragged

        
        @available(OSX 10.5, *)
        case gesture

        @available(OSX 10.5, *)
        case magnify

        @available(OSX 10.5, *)
        case swipe

        @available(OSX 10.5, *)
        case rotate

        @available(OSX 10.5, *)
        case beginGesture

        @available(OSX 10.5, *)
        case endGesture

        
        @available(OSX 10.8, *)
        case smartMagnify

        
        @available(OSX 10.8, *)
        case quickLook

        
        @available(OSX 10.10.3, *)
        case pressure

        @available(OSX 10.10, *)
        case directTouch
    }

返り値

Objective-C

( NSEvent * )

Swift

NSEvent? { get }

イベントオブジェクト(読み出しのみ)

フレームワーク

ApplicationKit

クラス

NSApplication

使用可能

10.0

編集時のバージョン

10.14.5
Swift4.2

例文

Objective-C

#import "Controller.h"

@implementation Controller

- (IBAction)pushButton:(id)sender
{
	NSEvent *event = [[NSApplication sharedApplication] currentEvent];
	
	switch ([event type]) {
		case NSKeyDown:
			NSLog(@"%d",[event keyCode]);
			break;
		case NSLeftMouseUp:
		case NSRightMouseUp:
			NSLog(@"%d",[event clickCount]);
		default:
			break;
	}
	
}



@end

Swift4.2

    //NSApplication currentEvent
    @IBAction func function005(_ sender: AnyObject) {
        NSLog("function005 called")
        let anApplication = NSApplication.shared
        let event:NSEvent = anApplication.currentEvent!
        let type:NSEvent.EventType = event.type
        switch type {
        case .leftMouseDown :       //NSEventType.LeftMouseDownでも良い
            NSLog("LeftMouseDown")
            break
        case NSEventType.leftMouseUp :  //.LeftMouseUpだけでも良い
            NSLog("LeftMouseUp")
        default :
            break
        }
    }


Swift

//NSApplication currentEvent
    @IBAction func function005(sender: AnyObject) {
        NSLog("function005 called")
        let anApplication = NSApplication.sharedApplication()
        var event:NSEvent = anApplication.currentEvent!
        var type:NSEventType = event.type
        switch type {
        case .LeftMouseDown :
            NSLog("LeftMouseDown")
            break
        case .LeftMouseUp :
            NSLog("LeftMouseUp")
        default :
            break
        }
    }