API函数
Declare Function EnableWindow Lib "user32" Alias "EnableWindow" (ByVal hwnd As Long, ByVal fEnable As Long) As Long
传递的第一个参数是窗口句柄(me.hwnd),但是第二参数也是长整型,传递参数时,第二值应该怎么设置。是传递常数、常量还是其他?为什么要这么传递?在学API过程中,遇到这些问题,
1.在传递参数时,为什么有些地方要用常数,有些地方要用自定义变量?
Declare Function EnableWindow Lib "user32" Alias "EnableWindow" (ByVal hwnd As Long, ByVal fEnable As Long) As Long
传递的第一个参数是窗口句柄(me.hwnd),但是第二参数也是长整型,传递参数时,第二值应该怎么设置。是传递常数、常量还是其他?为什么要这么传递?在学API过程中,遇到这些问题,
1.在传递参数时,为什么有些地方要用常数,有些地方要用自定义变量?
'其实该函数也可以这样定义:
Private Declare Function EnableWindow Lib "user32" Alias "EnableWindow" (ByVal hwnd As Long, ByVal fEnable As Boolean) As Long
第二个参数传递True,则使能窗口
如果传递Flase,则禁止窗口而函数本身的返回值,如果返回的是0,则表示该窗口之前不是被禁止的;如果返回的值大于0,则表示该窗口之前是被禁止的
至于你的那个问题“1.在传递参数时,为什么有些地方要用常数,有些地方要用自定义变量?”
你就要看是什么API函数了,在API浏览器搜索的时候取该API函数的每个单词的首字母,再加一个下划线“_”,如果有常量显示的话,则表示该API需要用到这几个常量举几个常用的例子:
GetWindowLong
该API需要用到的常量则为GWL_开头,即取Get、Window、Long开头的字母ShowWindow
以SW_开头的常量,即取Show、Window开头的字母SetWindowPos
以SWP_开头的常量…………还有很多API都是这样定义的,但只限于微软提供的API,如果是第三方提供的话就很难保证了!