来自fbgfx.bi的预定义结构(UDT)由
ScreenEvent用于返回事件数据
语法
#include once "fbgfx.bi"
using fb
Dim variable As Event
说明
在这里,为了清楚起见,我们报告
EVENT结构
Type EVENT Field = 1
Type As Integer
Union
Type
scancode As Integer
ascii As Integer
End Type
Type
x As Integer
y As Integer
dx As Integer
dy As Integer
End Type
button As Integer
z As Integer
w As Integer
End Union
End Type
Type字段将包含事件类型ID,而其余4个整数将保存事件类型的敏感数据。
事件类型
事件类型由返回到event 缓冲区(EVENT结构中的.type字段)的第一个整数的ID号标识。已知事件类型ID及其写入时的值为:
- EVENT_KEY_PRESS(1)键盘上按下一个键。.scancode字段包含键的独立于平台的扫描代码值;如果密钥具有ascii表示形式,则它保存在.ascii字段中,否则其值为0。
- EVENT_KEY_RELEASE(2)键盘上发布了一个键。.scancode和.ascii字段与EVENT_KEY_PRESS事件的含义相同。
- EVENT_KEY_REPEAT(3)一个关键是被拒绝。.scancode和.ascii字段与EVENT_KEY_PRESS事件的含义相同。
- EVENT_MOUSE_MOVE(4)鼠标在程序窗口上移动。.x和.y字段包含相对于屏幕左上角的新鼠标位置,而.dx和.dy字段包含运动增量。
- EVENT_MOUSE_BUTTON_PRESS(5)其中一个鼠标按钮被按下。.button字段有一位标识按下的按钮;位0标识鼠标左键,第1位为鼠标右键,第2位为鼠标中键。
- EVENT_MOUSE_BUTTON_RELEASE(6)其中一个鼠标按钮已被释放。.button字段与EVENT_MOUSE_BUTTON_PRESS事件的含义相同。
- EVENT_MOUSE_DOUBLE_CLICK(7)双击了其中一个鼠标按钮。.button字段与EVENT_MOUSE_BUTTON_PRESS事件的含义相同。
- EVENT_MOUSE_WHEEL(8)使用鼠标滚轮;新的车轮位置返回到.z字段。
- EVENT_MOUSE_ENTER(9)将鼠标移动到程序窗口中。
- EVENT_MOUSE_EXIT(10)将鼠标移出程序窗口。
- EVENT_WINDOW_GOT_FOCUS(11)程序窗口有焦点。
- EVENT_WINDOW_LOST_FOCUS(12)程序窗口已失去焦点。
- EVENT_WINDOW_CLOSE(13)用户尝试关闭程序窗口。
- EVENT_MOUSE_HWHEEL(14)使用水平鼠标滚轮;新的水平轮位置返回到.w字段。
fbgfx.bi头文件包含
EVENT用户数据类型的定义,因此无需手动进行声明。
方言差异
与QB差别
参考