<!--
{
  "availability" : [
    "iOS: 13.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSCursor/current",
  "metadataVersion" : "0.1.0",
  "role" : "Type Property",
  "symbol" : {
    "kind" : "Type Property",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:objc(cs)NSCursor(cpy)currentCursor"
  },
  "title" : "current"
}
-->

# current

Returns the application’s current cursor.

```
class var current: NSCursor { get }
```

## Return Value

The top cursor on the application’s cursor stack. This cursor may not be the visible cursor on the screen if a different application is currently active.

## Discussion

The method only returns the cursor set by your application using `NSCursor` methods. It does not return cursors set by other applications or cursors set by your application using Carbon APIs.

## See Also

[`mouseEntered(with:)`](/documentation/AppKit/NSCursor/mouseEntered(with:))

Automatically sent to the receiver when the cursor enters a cursor rectangle owned by the receiver.

[`pop()`](/documentation/AppKit/NSCursor/pop()-swift.method)

Sends a [`pop()`](/documentation/AppKit/NSCursor/pop()-swift.type.method) message to the receiver’s class.

[`push()`](/documentation/AppKit/NSCursor/push())

Puts the receiver on top of the cursor stack and makes it the current cursor.

[`set()`](/documentation/AppKit/NSCursor/set())

Makes the receiver the current cursor.

[`mouseExited(with:)`](/documentation/AppKit/NSCursor/mouseExited(with:))

Automatically sent to the receiver when the cursor exits a cursor rectangle owned by the receiver.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)