窗口或控件的事件(VFB教程1-3)

  勇芳 2018-2-16 4058

此处为VisualFreeBasic编程教程(从零开始学或VB进阶)的子章节部分,全部目录点链接。


软件里的事件,一般就是鼠标点击,鼠标移动,按键按下,等等,需要我们编程来处理它们

当然,很多不需要处理,就不管它,我们选择需要的即可。

QQ截图20180216111222.jpg

在代码编辑的左上角,点下就出,控件和窗口的名称,可以选择一个,你要处理的,

其中【通用】是自己写的函数

QQ截图20180216111439.jpg

右边是有关此窗口或控件的常用事件,加粗显示的是已经写过代码的,普通的没写过代码的。

控件不同,显示的常用事件也有所不同,其它事件,可在【自定义】里写,当然,自定义里可以包含上面所有的事件。

前面的英文 WM_???  其实是消息名称,也就是常数,具体解释和参数作用,可以查看 MSDN

事件非常多,也非常细,全面了解,三天三夜也说不完,因此我们需要本 WIN编程的书,不管什么语言,只要能介绍事件的即可。

心急的,可以不用看书学全部,VFB 帮你初步说明,

QQ截图20180216113224.jpg

比方这移动鼠标,表示是鼠标在这个窗口或控件上移动

MouseFlags 是数字,=0 表示没有鼠标的键按下, =1 是左键 等等

光标的坐标,是相对控件的,控件的左上角为 0,0

QQ截图20180216114130.jpg

Function = 0   ' 每个函数,必须要有1个明确的返回值,通常返回 0

QQ截图20180216114642.jpg

在自定消息里,标准写法,可写任意消息,和上面 鼠标移动 是一样的,不同的是,

VFB为你解码出消息值,标准WIn编程,只能自己解码,

wParam 和 lParam 与wMsg 关系,需要查看 MSDN

QQ截图20180216120355.jpg

在这里,如果返回 Function=1 非0,只是不是0 ,就可以阻止窗口关闭


QQ截图20180216120642.jpg

而这个是,系统通知控件或窗口,你要画控件内容了,

返回 0 表示,系统负责画内容,非0 的话,系统就不给你画了。

常见事件VFB与VB6对应:

注意:坐标VFB始终为【像素】,VB6默认是【缇】,缇=像素*15

事件名VB6VFB
创建窗口
LoadWM_CREATE
重绘
PaintWM_PAINT
调整大小ResizeWM_SIZE
窗口将要被关闭
UnloadWM_CLOSE
鼠标按下
MouseDownWM_LBUTTONDOWN WM_RBUTTONDOWN
鼠标移动MouseMoveWM_MOUSEMOVE
单击
ClickBN_CLICKED









事件的故事多,说不完,需要自己慢慢参透,


最新回复 (1)
    您需要登录后才可以回帖 登录 | 注册
  • 其实有点简略,可以多举例说明,比如Create,Click,Size,Paint,Timer等等常用的事件,同时做一个横向的对比,主要是跟VB6的事件对比,比如Create跟load,Size跟Resize这些,这样会给大家更清晰的认识。

返回
联系勇芳