Для создания интерактивных графических программ, например, игр, Microsoft Small Basic имеет класс GraphicsWindow, который поддерживает также работу мыши и клавиатуры. Обратите внимание, что при перемещениях мыши, нажатиях и отпусканиях кнопок мыши, нажатиях и отпусканиях клавиш на клавиатуре графическое окно реагирует вызовом подпрограмм — обработчиков соответствующих событий. Вы можете использовать это для того, чтобы программа выполняла определенные действия в ответ на эти события.
Вы можете скопировать указанный ниже код программы в IDE MS Small Basic и запустить:
'Задание подпрограмм-обработчиков для обработки событий
GraphicsWindow.KeyDown = OnKeyDown
GraphicsWindow.KeyUp = OnKeyUp
GraphicsWindow.MouseDown = OnMouseDown
GraphicsWindow.MouseMove = OnMouseMove
GraphicsWindow.MouseUp = OnMouseUp
GraphicsWindow.TextInput = OnTextInput
Sub OnKeyDown ' Обработчик нажатий клавиш
GraphicsWindow.Title = "Нажата " + GraphicsWindow.LastKey
EndSub
Sub OnKeyUp ' Обработчик отпускании клавиш
GraphicsWindow.Title = "Отпущена " + GraphicsWindow.LastKey
EndSub
Sub OnMouseDown ' Обработчик нажатий кнопок мыши
If Mouse.IsLeftButtonDown Then
GraphicsWindow.Title = "Левая кнопка нажата"
ElseIf Mouse.IsRightButtonDown Then
GraphicsWindow.Title = "Правая кнопка нажата"
Else
GraphicsWindow.Title = "Нажата другая кнопка мыши"
EndIf
EndSub
Sub OnMouseMove ' Обработчик движений мышью
' GraphicsWindow.MouseX и GraphicsWindow.MouseY - координаты курсора мыши относительно графического окна.
' Mouse.MouseX и Mouse.MouseY - координаты курсора мыши относительно всего экрана (Рабочего стола Windows).
GraphicsWindow.Title = "GWX = " + GraphicsWindow.MouseX + ", GWY = " + GraphicsWindow.MouseY + ", ЭкранныйX = " + Mouse.MouseX + ", ЭкранныйY = " + Mouse.MouseY
EndSub
Sub OnMouseUp ' Обработчик отпусканий кнопок мыши
GraphicsWindow.Title = "Какая-то кнопка мыши отпущена"
EndSub
Sub OnTextInput ' Обработчик текстового ввода
GraphicsWindow.Title = "Был введён какой-то текст"
EndSub
Поделиться: