请问是不是任何控件都有句柄啊,比如游戏里面的怪物啊,吃的东西什么的。

解决方案 »

  1.   

    从TGraphicControl继承下来的是没有句柄的
      

  2.   

    句柄分2种情况
    一个是GDI用户对象,比如窗口,菜单,字体,设备上下文等。这些句柄是你进程私有的,比如最常见的窗口对象,VCL中方式从TWinControl继承过来的对象都有一个窗口句柄。
    一个是内核对象,比如:互斥量,对象锁,信号量,等,是系统内核对象,这些对象的句柄是系统唯一的,也就是这些对象的名称空间是全系统唯一,如果你命名的一个内核对象的名称已在其他程序命名了,那么,你用将得到ALREADY_EXIST的错误win32信息
    基本上句柄就是由这2类东西产生的。实际上句柄是系统维护对象的一个数组的下标标志。