Описание класса QCursor
|
QCursor () | |
QCursor ( Qt::CursorShape shape ) | |
QCursor ( const QBitmap & bitmap, const QBitmap & mask, int hotX = -1, int hotY = -1 ) | |
QCursor ( const QPixmap & pixmap, int hotX = -1, int hotY = -1 ) | |
QCursor ( const QCursor & c ) | |
QCursor ( HCURSOR cursor ) | |
QCursor ( Qt::HANDLE handle ) | |
~QCursor () | |
const QBitmap * | bitmap () const |
HCURSOR_or_HANDLE | handle () const |
QPoint | hotSpot () const |
const QBitmap * | mask () const |
QPixmap | pixmap () const |
void | setShape ( Qt::CursorShape shape ) |
Qt::CursorShape | shape () const |
operator QVariant () const | |
QCursor & | operator= ( const QCursor & c ) |
QPoint | pos () |
void | setPos ( int x, int y ) |
void | setPos ( const QPoint & p ) |
QDataStream & | operator<< ( QDataStream & stream, const QCursor & cursor ) |
QDataStream & | operator>> ( QDataStream & stream, QCursor & cursor ) |
Класс QCursor предоставляет курсор мыши произвольной формы.
Этот класс в основном используется для связывания особых форм курсора с определёнными виджетами, а также для установки или получения позиции курсора мыши.
Qt имеет некоторое количество стандартных форм курсоров, но вы можете сделать пользовательскую форму курсора, основанную на QBitmap, маске и горячей точке.
Для того, чтобы связать курсор с виджетом, используйте QWidget::setCursor(). Для того, чтобы связать курсор со всеми виджетами (обычно требуется на короткий промежуток времени), используйте QApplication::setOverrideCursor().
Для того, чтобы установить форму курсора, используйте QCursor::setShape() или конструктор класса QCursor, который принимает форму курсора как аргумент, или же вы можете использовать один из курсоров, определённых в перечислении Qt::CursorShape.
Если вы хотите создать курсор с вашим собственным битовым изображением, то вы можете либо использовать конструктор QCursor, который принимает битовое изображение и маску, либо конструктор, который принимает растровое изображение.
Для того, чтобы установить или получить позицию курсора мыши, используйте статические методы QCursor::pos() и QCursor::setPos().
Примечание: Возможно создать QCursor до QApplication, но это бесполезно, за исключением заготовки для реального QCursor, создаваемого после QApplication. Попытка использовать QCursor, созданный до QApplication, приведёт к ошибке.
На X11 Qt поддерживает библиотеку Xcursor, которая позволяет использовать полноцветные темы пиктограмм. Таблица ниже показывает имена курсоров, связанных с каждым значением перечисления Qt::CursorShape. Если курсор не может быть найден при использовании указанного ниже имени, то вместо этого будет использован стандартный курсор X11. Замечание: X11 не предоставляет курсоров для всех возможных значений перечисления Qt::CursorShape. Возможно, некоторые курсоры будут взяты из темы Xcursor, в то время как другие будут использовать внутренний битовый курсор.
Форма | Значение Qt::CursorShape | Имя курсора | Форма | Значение Qt::CursorShape | Имя курсора |
---|---|---|---|---|---|
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 |
Смотрите также QWidget и GUI Design Handbook: Cursors.
Создаёт курсор с формой указателя по умолчанию.
Создаёт курсор с указанной формой shape.
Список форм смотрите в Qt::CursorShape.
Смотрите также setShape().
Создаёт пользовательский курсор, основанный на битовом изображении.
bitmap и mask составляют битовое изображение. hotX и hotY определяют горячую точку курсора.
Если hotX отрицательный, то он устанавливается в bitmap().width()/2. Если hotY отрицательный, то он устанавливается в bitmap().height()/2.
Биты переменных bitmap (B) и mask (M) объединяются следующим образом:
Используйте глобальный цвет из библиотеки Qt Qt::color0 для рисования 0-пикселов и Qt::color1 для рисования 1-пикселов в битовых изображениях.
Допустимые размеры курсора зависят от аппаратных средств дисплея (или базовой оконной системой). Мы рекомендуем использовать размер курсора 32 x 32, потому что этот размер поддерживается всеми платформами. Некоторые платформы также поддерживают размеры 16 x 16, 48 x 48, и 64 x 64.
Замечание: В Windows CE размеры курсора фиксированы. Если растровое изображение курсора больше, чем определённое в системе, то оно масштабируется.
Смотрите также QBitmap::QBitmap() и QBitmap::setMask().
Создаёт пользовательский курсор, основанный на растровом изображении.
pixmap - это изображение. Оно обычно использует маску (устанавливается при помощи QPixmap::setMask()). hotX и hotY определяют горячую точку курсора.
Если hotX отрицательный, то он устанавливается в pixmap().width()/2. Если hotY отрицательный, то он устанавливается в pixmap().height()/2.
Допустимые размеры курсора зависят от аппаратных средств дисплея (или базовой оконной системой). Мы рекомендуем использовать размер курсора 32 x 32, потому что этот размер поддерживается всеми платформами. Некоторые платформы также поддерживают размеры 16 x 16, 48 x 48, и 64 x 64.
Замечание: В Windows CE размеры курсора фиксированы. Если растровое изображение курсора больше, чем определённое в системе, то оно масштабируется.
Смотрите также QPixmap::QPixmap() и QPixmap::setMask().
Создаёт копию курсора c.
Создаёт курсор Qt, основанный на курсоре cursor в формате Windows.
Внимание: Эта функция доступна только в Windows.
Смотрите также handle().
Создаёт курсор Qt, основанный на заданном дескрипторе handle.
Внимание: Эта функция доступна только на X11.
Смотрите также handle().
Уничтожает курсор.
Возвращает битовое изображение курсора или 0, если используется один из стандартных курсоров.
Возвращает платформо-зависимый дескриптор курсора. Тип HCURSOR_or_HANDLE является типом HCURSOR в Windows и типом Qt::HANDLE в X11 и Mac OS X. В Qt для встраиваемых Linux-систем это тип integer.
Внимание: Использование значения, возвращаемого этой функцией, не является переносимым.
Возвращает горячую точку курсора или (0, 0) если это один из стандартных курсоров.
Возвращает битовое изображение маски курсора или 0, если это один из стандартных курсоров.
Возвращает растровое изображение курсора. Эта функция работает только в том случае, если текущий курсор определён растровым изображением.
Возвращает позицию курсора (горячей точки) в глобальных координатах экрана.
Вы можете воспользоваться QWidget::mapFromGlobal() для их перевода в координаты виджета.
Смотрите также setPos(), QWidget::mapFromGlobal() и QWidget::mapToGlobal().
Перемещает курсор (горячую точку) в глобальную экранную позицию (x, y).
Вы можете вызвать QWidget::mapToGlobal() для перевода координат виджета в глобальные координаты экрана.
Смотрите также pos(), QWidget::mapFromGlobal() и QWidget::mapToGlobal().
Это перегруженная функция.
Перемещает курсор (горячую точку) в глобальных координатах экрана в точку p.
Устанавливает форму курсора в форму shape.
Список форм курсора смотрите в Qt::CursorShape.
Смотрите также shape().
Возвращает идентификатор формы курсора. Возвращает одно из значений перечисления Qt::CursorShape (приведение к int).
Смотрите также setShape().
Возвращает курсор как QVariant.
Присваивает c этому курсору и возвращает ссылку на него.
Записывает cursor в stream.
Смотрите также Формат операторов QDataStream.
Считывает cursor из stream.
Смотрите также Формат операторов QDataStream.
Авторские права © 2010 Nokia Corporation и/или её дочерние компании | Торговые марки | Qt 4.6.4 |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |