PureBasic

InitMouse()

Синтаксис

Result = InitMouse()

Описание


Инициализирует среду поддержки Мыши для её последующего использования. Эта функция должна вызываться перед любыми другими функциями этой библиотеки.

Параметры

Ничего.

Возвращаемое значение

Возвращает ненулевое значение, если инициализация Мыши прошла успешно, иначе 0.
Эта команда пытается открыть DirectX (v3.0 для совместимости NT4.0, или v7.0 или новее). Если функция не работает (Result = 0), это может произойти из-за отсутствия DirectX на вашем компьютере или слишком старой версии DirectX.
В Windows должна быть установлена последняя версия DirectX 9 (см. Здесь установщик среды выполнения DirectX 9).

Пример (фран.)

; Инициализация мира 2D
InitSprite()
InitMouse()

; Открытие окна
OpenWindow(0, 0, 0, 800, 600, "Мышь - Нажимайте и используйте колесо...", #PB_Window_ScreenCentered|#PB_Window_SystemMenu)
OpenWindowedScreen(WindowID(0), 0, 0, 800, 600, 1, 0, 0)

;Создание курсора мыши
LoadSprite(0, #PB_Compiler_Home + "examples/sources/Data/PureBasic.bmp")  ; Load nice small Logo

; Перемещение мыши
MouseLocate(300, 200)

; Управление окнами и экранами
Repeat
    Repeat      ; Управление окнами
        Event  = WindowEvent()
        Select Event
            Case #PB_Event_CloseWindow
                End
        EndSelect
    Until Event = 0

    ExamineMouse() ; Состояние мыши
    x = MouseX() ; Положение мыши в х
    y = MouseY() ; Положение мыши в y

    ; Отображение курсора
    DisplaySprite(0, x-SpriteWidth(0)/2, y-SpriteHeight(0)/2)

    ; Колесо мыши = вращение курсора
    tiks = MouseWheel()
    RotateSprite(0, tiks, #PB_Relative)

    ; Отобразить состояние мыши
    StartDrawing(ScreenOutput())
    DrawText(0, 5, "X=" + Str(x) + "  Y=" + Str(y) + "  DeltaX " + Str(MouseDeltaX()) + "  DeltaY= " + Str(MouseDeltaY()))
    If MouseButton(#PB_MouseButton_Left) <> 0
        DrawText(0, 30, "Левая кнопка", RGB(255, 0, 0), RGB(255, 255, 0))
    Else
        DrawText(0, 30, "Левая кнопка", RGB(255, 255, 255))
    EndIf
    If MouseButton(#PB_MouseButton_Middle) <> 0
        DrawText(150, 30, "Центральная кнопка", RGB(255, 0, 0), RGB(255, 255, 0))
    Else
        DrawText(150, 30, "Центральная кнопка", RGB(255, 255, 255))
    EndIf
    If MouseButton(#PB_MouseButton_Right) <> 0
        DrawText(300, 30, "Правая кнопка", RGB(255, 0, 0), RGB(255, 255, 0))
    Else
        DrawText(300, 30, "Правая кнопка", RGB(255, 255, 255))
    EndIf
    If tiks <> 0
        DrawText(450, 30, "Колесо", RGB(255, 0, 0), RGB(255, 255, 0))
    Else
        DrawText(450, 30, "Колесо", RGB(255, 255, 255))
    EndIf
    DrawText(0, 60, ".: Отпустите кнопку мыши: нажмите левую и правую кнопку :.")
    StopDrawing()

    ; Если щелкнуть левой кнопкой мыши и правой кнопкой мыши, то мышь исчезнет с текущего экрана.
    If MouseButton(#PB_MouseButton_Left)  And MouseButton(#PB_MouseButton_Right)
        ReleaseMouse(1)
        oui=6
        quitter=MessageRequester("Инфо ", "Вы хотите выйти из программы?", #PB_MessageRequester_YesNo)
        If quitter=oui
            End
        EndIf
    EndIf

    FlipBuffers()
    ClearScreen(RGB(0, 0, 0))

ForEver
End

См. также

ExamineMouse()

Поддерживаемые OS

Все

<- ExamineMouse() - Оглавление Mouse - MouseButton() ->