Overview | Package | Class | Tree | Deprecated | Index | Help
Qt Jambi Home |
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.trolltech.qt.gui
Class QCursor

    java.lang.Object
      com.trolltech.qt.QSignalEmitter
          com.trolltech.qt.QtJambiObject
              com.trolltech.qt.gui.QCursor

All Implemented Interfaces:
  QtJambiInterface

    public class QCursor

extends QtJambiObject

The `QCursor` class provides a mouse cursor with an arbitrary shape.

This class is mainly used to create mouse cursors that are associated with particular widgets and to get and set the position of the mouse cursor.

Qt has a number of standard cursor shapes, but you can also make custom cursor shapes based on a `QBitmap`, a mask and a hotspot.

To associate a cursor with a widget, use QWidget::setCursor(). To associate a cursor with all widgets (normally for a short period of time), use QApplication::setOverrideCursor().

To set a cursor shape use QCursor::setShape() or use the `QCursor` constructor which takes the shape as argument, or you can use one of the predefined cursors defined in the `Qt::CursorShape` enum.

If you want to create a cursor with your own bitmap, either use the `QCursor` constructor which takes a bitmap and a mask or the constructor which takes a pixmap as arguments.

To set or get the position of the mouse cursor use the static methods QCursor::pos() and QCursor::setPos().

Note: It is possible to create a `QCursor` before `QApplication`, but it is not useful except as a place-holder for a real `QCursor` created after `QApplication`. Attempting to use a `QCursor` that was created before `QApplication` will result in a crash.

### A Note for X11 Users

On X11, Qt supports the Xcursor library, which allows for full color icon themes. The table below shows the cursor name used for each Qt::CursorShape value. If a cursor cannot be found using the name shown below, a standard X11 cursor will be used instead. Note: X11 does not provide appropriate cursors for all possible Qt::CursorShape values. It is possible that some cursors will be taken from the Xcursor theme, while others will use an internal bitmap cursor.

Shape | Qt::CursorShape Value | Cursor Name | Shape | Qt::CursorShape Value | Cursor Name
--- | --- | --- | --- | --- | ---
| Qt::ArrowCursor | `left_ptr` |  | Qt::SizeVerCursor | `size_ver`
| Qt::UpArrowCursor | `up_arrow` |  | Qt::SizeHorCursor | `size_hor`
| Qt::CrossCursor | `cross` |  | Qt::SizeBDiagCursor | `size_bdiag`
| Qt::IBeamCursor | `ibeam` |  | Qt::SizeFDiagCursor | `size_fdiag`
| Qt::WaitCursor | `wait` |  | Qt::SizeAllCursor | `size_all`
| Qt::BusyCursor | `left_ptr_watch` |  | Qt::SplitVCursor | `split_v`
| Qt::ForbiddenCursor | `forbidden` |  | Qt::SplitHCursor | `split_h`
| Qt::PointingHandCursor | `pointing_hand` |  | Qt::OpenHandCursor | `openhand`
| Qt::WhatsThisCursor | `whats_this` |  | Qt::ClosedHandCursor | `closedhand`

See Also:
  `QWidget`, GUI Design Handbook: Cursors

Nested Class Summary

Nested classes/interfaces inherited from class com.trolltech.qt.QSignalEmitter
`QSignalEmitter.AbstractSignal, QSignalEmitter.Signal0, QSignalEmitter.Signal1<A>, QSignalEmitter.Signal2<A,B>, QSignalEmitter.Signal3<A,B,C>, QSignalEmitter.Signal4<A,B,C,D>, QSignalEmitter.Signal5<A,B,C,D,E>, QSignalEmitter.Signal6<A,B,C,D,E,F>, QSignalEmitter.Signal7<A,B,C,D,E,F,G>, QSignalEmitter.Signal8<A,B,C,D,E,F,G,H>, QSignalEmitter.Signal9<A,B,C,D,E,F,G,H,I>`

Constructor Summary
`QCursor()` Constructs a cursor with the default arrow shape.
`QCursor(QBitmap bitmap, QBitmap mask)` Equivalent to `QCursor`(`bitmap`, `mask`, -1, -1).
`QCursor(QBitmap bitmap, QBitmap mask, int hotX)` Equivalent to `QCursor`(`bitmap`, `mask`, `hotX`, -1).
`QCursor(QBitmap bitmap, QBitmap mask, int hotX, int hotY)` Constructs a custom bitmap cursor.
`QCursor(QCursor cursor)` Constructs a copy of the cursor `cursor`.
`QCursor(QPixmap pixmap)` Equivalent to `QCursor`(`pixmap`, -1, -1).
`QCursor(QPixmap pixmap, int hotX)` Equivalent to `QCursor`(`pixmap`, `hotX`, -1).
`QCursor(QPixmap pixmap, int hotX, int hotY)` Constructs a custom pixmap cursor.
`QCursor(Qt.CursorShape shape)` Constructs a cursor with the specified `shape`.

Method Summary
`QBitmap` | `bitmap()` Returns the cursor bitmap, or null if it is one of the standard cursors.
`static QCursor` | `fromNativePointer(QNativePointer nativePointer)` This function returns the QCursor instance pointed to by nativePointer
`QPoint` | `hotSpot()` Returns the cursor hot spot, or (0, 0) if it is one of the standard cursors.
`QBitmap` | `mask()` Returns the cursor bitmap mask, or null if it is one of the standard cursors.
`static QNativePointer` | `nativePointerArray(QCursor[] array)` This function returns a QNativePointer that is pointing to the specified QCursor array.
`QPixmap` | `pixmap()` Returns the cursor pixmap.
`static QPoint` | `pos()` Returns the position of the cursor (hot spot) in global screen coordinates.
`void` | `readFrom(QDataStream inS)` Reads a QCursor from inS.
`static void` | `setPos(int x, int y)` Moves the cursor (hot spot) to the global screen position (`x`, `y`).
`static void` | `setPos(QPoint p)` Moves the cursor (hot spot) to the global screen position at point `p`.
`void` | `setShape(Qt.CursorShape newShape)` Sets the cursor to the shape identified by `newShape`.
`Qt.CursorShape` | `shape()` Returns the cursor shape identifier.
`void` | `writeTo(QDataStream outS)` Writes thisQCursor to outS.

Methods inherited from class com.trolltech.qt.QtJambiObject
`dispose, disposed, finalize, reassignNativeResources, tr, tr, tr`

Methods inherited from class com.trolltech.qt.QSignalEmitter
`blockSignals, disconnect, disconnect, signalsBlocked, signalSender, thread`

Methods inherited from class java.lang.Object
`clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface com.trolltech.qt.QtJambiInterface
`disableGarbageCollection, nativeId, nativePointer, reenableGarbageCollection, setJavaOwnership`

Constructor Detail

### QCursor

    public QCursor()

  Constructs a cursor with the default arrow shape.

### QCursor

    public QCursor(Qt.CursorShape shape)

  Constructs a cursor with the specified `shape`.

  See `Qt::CursorShape` for a list of shapes.

  See Also:
    `setShape`

### QCursor

    public QCursor(QBitmap bitmap,
                   QBitmap mask,
                   int hotX)

  Equivalent to `QCursor`(`bitmap`, `mask`, `hotX`, -1).

### QCursor

    public QCursor(QBitmap bitmap,
                   QBitmap mask)

  Equivalent to `QCursor`(`bitmap`, `mask`, -1, -1).

### QCursor

    public QCursor(QBitmap bitmap,
                   QBitmap mask,
                   int hotX,
                   int hotY)

  Constructs a custom bitmap cursor.

  `bitmap` and `mask` make up the bitmap. `hotX` and `hotY` define the cursor's hot spot.

  If `hotX` is negative, it is set to the `bitmap().width()/2`. If `hotY` is negative, it is set to the `bitmap().height()/2`.

  The cursor `bitmap` (B) and `mask` (M) bits are combined like this:

  - B=1 and M=1 gives black.
  - B=0 and M=1 gives white.
  - B=0 and M=0 gives transparent.
  - B=1 and M=0 gives an XOR'd result.

  Use the global Qt color Qt::color0 to draw 0-pixels and Qt::color1 to draw 1-pixels in the bitmaps.

  Valid cursor sizes depend on the display hardware (or the underlying window system). We recommend using 32 x 32 cursors, because this size is supported on all platforms. Some platforms also support 16 x 16, 48 x 48, and 64 x 64 cursors.

  See Also:
    `QBitmap::QBitmap`, `QBitmap::setMask`

### QCursor

    public QCursor(QCursor cursor)

  Constructs a copy of the cursor `cursor`.

### QCursor

    public QCursor(QPixmap pixmap,
                   int hotX)

  Equivalent to `QCursor`(`pixmap`, `hotX`, -1).

### QCursor

    public QCursor(QPixmap pixmap)

  Equivalent to `QCursor`(`pixmap`, -1, -1).

### QCursor

    public QCursor(QPixmap pixmap,
                   int hotX,
                   int hotY)

  Constructs a custom pixmap cursor.

  `pixmap` is the image. It is usual to give it a mask (set using QPixmap::setMask()). `hotX` and `hotY` define the cursor's hot spot.

  If `hotX` is negative, it is set to the `pixmap().width()/2`. If `hotY` is negative, it is set to the `pixmap().height()/2`.

  Valid cursor sizes depend on the display hardware (or the underlying window system). We recommend using 32 x 32 cursors, because this size is supported on all platforms. Some platforms also support 16 x 16, 48 x 48, and 64 x 64 cursors.

  See Also:
    `QPixmap::QPixmap`, `QPixmap::setMask`

Method Detail

### hotSpot

    public final QPoint hotSpot()

  Returns the cursor hot spot, or (0, 0) if it is one of the standard cursors.

### writeTo

    public final void writeTo(QDataStream outS)

  Writes thisQCursor to outS.

### readFrom

    public final void readFrom(QDataStream inS)

  Reads a QCursor from inS.

### pixmap

    public final QPixmap pixmap()

  Returns the cursor pixmap. This is only valid if the cursor is a pixmap cursor.

### setShape

    public final void setShape(Qt.CursorShape newShape)

  Sets the cursor to the shape identified by `newShape`.

  See `Qt::CursorShape` for the list of cursor shapes.

  See Also:
    `shape`

### shape

    public final Qt.CursorShape shape()

  Returns the cursor shape identifier. The return value is one of the `Qt::CursorShape` enum values (cast to an int).

  See Also:
    `setShape`

### pos

    public static QPoint pos()

  Returns the position of the cursor (hot spot) in global screen coordinates.

  You can call QWidget::mapFromGlobal() to translate it to widget coordinates.

  See Also:
    `setPos`, `QWidget::mapFromGlobal`, `QWidget::mapToGlobal`

### setPos

    public static void setPos(QPoint p)

  Moves the cursor (hot spot) to the global screen position at point `p`.

### setPos

    public static void setPos(int x,
                              int y)

  Moves the cursor (hot spot) to the global screen position (`x`, `y`).

  You can call QWidget::mapToGlobal() to translate widget coordinates to global screen coordinates.

  See Also:
    `pos`, `QWidget::mapFromGlobal`, `QWidget::mapToGlobal`

### fromNativePointer

    public static QCursor fromNativePointer(QNativePointer nativePointer)

  This function returns the QCursor instance pointed to by nativePointer

  Parameters:
    `nativePointer` - the QNativePointer of which object should be returned.

### nativePointerArray

    public static QNativePointer nativePointerArray(QCursor[] array)

  This function returns a QNativePointer that is pointing to the specified QCursor array.

  Parameters:
    `array` - the array that the returned pointer will point to.
  Returns:
    a QNativePointer that is pointing to the specified array.

### bitmap

    public final QBitmap bitmap()

  Returns the cursor bitmap, or null if it is one of the standard cursors.

### mask

    public final QBitmap mask()

  Returns the cursor bitmap mask, or null if it is one of the standard cursors.

Overview | Package | Class | Tree | Deprecated | Index | Help
Qt Jambi Home |
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD