句柄吗
句柄就象一个人的身份证号,可以唯一标识一个对象.比如窗体的句柄form1.hwnd,文件也有句柄的.

解决方案 »

  1.   

    说白了就是windows对象的标识值
      

  2.   

    1.句柄唯一的标识某个windows对象;
    2.同一个windows对象在不同的运行时期获得的句柄可能不同.
    3.通俗一点:
    教室里有100个标有号码的课桌,上课时,每个号码(比如no.10)唯一的标识了某位同学(比如同学A);
    明天再上课时,同学A如果又来上课的话,他的课桌号码可能还是no.10,不过很有可能不是了(比如变成了no.20),但是现在每个号码(句柄)同样唯一的标识某位同学(windows对象).
    4.不知是否说清楚了?
      

  3.   

    To rivershan(笨猫):
    GetWindow VB声明 
    Declare Function GetWindow Lib "user32" Alias "GetWindow" (ByVal hwnd As Long, ByVal wCmd As Long) As Long 
    说明 
    获得一个窗口的句柄,该窗口与某源窗口有特定的关系 
    返回值 
    Long,由wCmd决定的一个窗口的句柄。如没有找到相符窗口,或者遇到错误,则返回零值。会设置GetLastError 
    参数表 
    参数 类型及说明 
    hwnd Long,源窗口 
    wCmd Long,指定结果窗口与源窗口的关系,它们建立在下述常数基础上: 
    GW_CHILD 寻找源窗口的第一个子窗口 
    GW_HWNDFIRST 为一个源子窗口寻找第一个兄弟(同级)窗口,或寻找第一个顶级窗口 
    GW_HWNDLAST 为一个源子窗口寻找最后一个兄弟(同级)窗口,或寻找最后一个顶级窗口 
    GW_HWNDNEXT 为源窗口寻找下一个兄弟窗口 
    GW_HWNDPREV 为源窗口寻找前一个兄弟窗口 
    GW_OWNER 寻找窗口的所有者 
    注解 
    兄弟或同级是指在整个分级结构中位于同一级别的窗口。如某个窗口有五个子窗口,那五个窗口就是兄弟窗口。尽管GetWindow可用于枚举窗口,但倘若要在枚举过程中重新定位、创建和清除窗口,那么EnumWindows和EnumChildWindows更为可靠
     
    ====================================================================
    GetClassName VB声明 
    Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long 
    说明 
    为指定的窗口取得类名 
    返回值 
    Long,以字节数表示的类名长度;排除最后的空中止字符。零表示出错。会设置GetLastError 
    参数表 
    参数 类型及说明 
    hwnd Long,欲获得类名的那个窗口的句柄 
    lpClassName String,随同类名载入的缓冲区。预先至少必须分配nMaxCount+1个字符 
    nMaxCount Long,由lpClassName提供的缓冲区长度 
      

  4.   

    所谓句柄,实际上就是一个标识资源的值。Windows95 包含有许多句柄类型,如应用 程序实例、窗口、菜单、控件、输出设备、画笔 等等,所有句柄类型都以 H 打头,通过句柄,应用程序才能访问信息,才能借助系统完成实际工作,这是Windows95在多任务环境下保护信息的一种手段。
      

  5.   

    VB对API函数的调用:首先要在全局模块或窗体中申明要使用的函数或过程,然后像使用VB自身函数或过程一样,直接使用或用CALL调用即可。声明格式如下:Declare Function (或Sub) 函数名 Lib “DLL库名” [Alias “函数别名”] [(参数)] [As数据类型]
    1.  声明的地方有两点,用途有所不同。 在窗体的总体声明部分声明:    该函数只能在此窗体内的过程或函数中使用,其它窗体则无法使用,而且需要在Declare前面加上Private, 否则VB将提示编译错误。在全局模块中声明: 
        Declare前面不加任何范围限制则可使用于整个程序,不再局限于某个窗体,最好加上Public,特别是API函数中需要的常数前面一定要加上 Public,否则有可能在别处无法使用。2. 别名的使用:  Alias表示别名,它主要是在需要调用的动态库中的函数和VB已有的保留字、函数或用户已定义的变量 或函数名字相同时使用,可以避免因名称相同带来麻烦。假如VB中已有AAA这个函数,而需要调用的动态库中的函数名也叫AAA,那么VB将不知道使用哪个AAA,从而出错。这时,我们就要为动态库中的AAA另起一个名字,例如给它一个别名BBB。这样,我们在程序中直接使用BBB就可以了,VB碰到BBB就自动会使用动态库中的AAA函数,而不是VB中的AAA函数