SFML - Simple and Fast Multimedia Library

SFML 2.6.0

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | List of all members
sf::Mouse Class Reference
Window module

Give access to the real-time state of the mouse. More...

`#include <SFML/Window/Mouse.hpp>`

## Public Types
enum | Button { Left , Right , Middle , XButton1 , XButton2 , ButtonCount }
| Mouse buttons. More...
enum | Wheel { VerticalWheel , HorizontalWheel }
| Mouse wheels. More...

## Static Public Member Functions
static bool | isButtonPressed (Button button)
| Check if a mouse button is pressed.
static Vector2i | getPosition ()
| Get the current position of the mouse in desktop coordinates.
static Vector2i | getPosition (const WindowBase &relativeTo)
| Get the current position of the mouse in window coordinates.
static void | setPosition (const Vector2i &position)
| Set the current position of the mouse in desktop coordinates.
static void | setPosition (const Vector2i &position, const WindowBase &relativeTo)
| Set the current position of the mouse in window coordinates.

## Detailed Description

Give access to the real-time state of the mouse.

sf::Mouse provides an interface to the state of the mouse.

It only contains static functions (a single mouse is assumed), so it's not meant to be instantiated.

This class allows users to query the mouse state at any time and directly, without having to deal with a window and its events. Compared to the MouseMoved, MouseButtonPressed and MouseButtonReleased events, sf::Mouse can retrieve the state of the cursor and the buttons at any time (you don't need to store and update a boolean on your side in order to know if a button is pressed or released), and you always get the real state of the mouse, even if it is moved, pressed or released when your window is out of focus and no event is triggered.

The setPosition and getPosition functions can be used to change or retrieve the current position of the mouse pointer. There are two versions: one that operates in global coordinates (relative to the desktop) and one that operates in window coordinates (relative to a specific window).

Usage example:

if (sf::Mouse::isButtonPressed(sf::Mouse::Left))
{
// left click...
}
// get global mouse position
sf::Vector2i position = sf::Mouse::getPosition();
// set mouse position relative to a window
sf::Mouse::setPosition(sf::Vector2i(100, 200), window);
sf::Mouse::setPosition
static void setPosition(const Vector2i &position)
Set the current position of the mouse in desktop coordinates.
sf::Mouse::Left
@ Left
The left mouse button.
Definition Mouse.hpp:53
sf::Mouse::isButtonPressed
static bool isButtonPressed(Button button)
Check if a mouse button is pressed.
sf::Mouse::getPosition
static Vector2i getPosition()
Get the current position of the mouse in desktop coordinates.
sf::Vector2
Utility template class for manipulating 2-dimensional vectors.
Definition Vector2.hpp:38

See also
  sf::Joystick, sf::Keyboard, sf::Touch

Definition at line 43 of file Mouse.hpp.

## Member Enumeration Documentation

## ◆ Button

enum sf::Mouse::Button

Mouse buttons.

Enumerator
Left | The left mouse button.
Right | The right mouse button.
Middle | The middle (wheel) mouse button.
XButton1 | The first extra mouse button.
XButton2 | The second extra mouse button.
ButtonCount | Keep last – the total number of mouse buttons.

Definition at line 51 of file Mouse.hpp.

## ◆ Wheel

enum sf::Mouse::Wheel

Mouse wheels.

Enumerator
VerticalWheel | The vertical mouse wheel.
HorizontalWheel | The horizontal mouse wheel.

Definition at line 66 of file Mouse.hpp.

## Member Function Documentation

## ◆ getPosition() [1/2]

static Vector2i sf::Mouse::getPosition | ( |  | ) |
| static

Get the current position of the mouse in desktop coordinates.

This function returns the global position of the mouse cursor on the desktop.

Returns
  Current position of the mouse

## ◆ getPosition() [2/2]

static Vector2i sf::Mouse::getPosition | ( | const WindowBase & | relativeTo | ) |
| static

Get the current position of the mouse in window coordinates.

This function returns the current position of the mouse cursor, relative to the given window.

Parameters

  relativeTo | Reference window

Returns
  Current position of the mouse

## ◆ isButtonPressed()

static bool sf::Mouse::isButtonPressed | ( | Button | button | ) |
| static

Check if a mouse button is pressed.

Warning
  Checking the state of buttons Mouse::XButton1 and Mouse::XButton2 is not supported on Linux with X11.

Parameters

  button | Button to check

Returns
  True if the button is pressed, false otherwise

## ◆ setPosition() [1/2]

static void sf::Mouse::setPosition | ( | const Vector2i & | position | ) |
| static

Set the current position of the mouse in desktop coordinates.

This function sets the global position of the mouse cursor on the desktop.

Parameters

  position | New position of the mouse

## ◆ setPosition() [2/2]

static void sf::Mouse::setPosition | ( | const Vector2i & | position,
|  | const WindowBase & | relativeTo
| ) |  |
| static

Set the current position of the mouse in window coordinates.

This function sets the current position of the mouse cursor, relative to the given window.

Parameters

  position | New position of the mouse
  relativeTo | Reference window

The documentation for this class was generated from the following file:

- Mouse.hpp