Delphi 窗体函数SetWindowLong - 改变指定窗口的属性

Delphi 窗体函数SetWindowLong - 改变指定窗口的属性

原型:

LONG SetWindowLong(
HWND hWnd, // handle to window
int nlndex, // offset of value to set
LONG dwNewLong // new value
);

参数:

hWnd  窗口句柄及间接给出的窗口所属的类。

nlndex  指定将设定的大于等于0的偏移值。有效值的范围从0到额外类的存储空间的字节数减4:例如若指定了12或多于12个字节的额外窗口存储空间,则应设索引位8来访问第三个4字节,同样设置0访问第一个4字节,4访问第二个4字节。要设置其他任何值,可以指定下面值之一:

常量

常量值

意义

GWL_EXSTYLE

-20

设定一个新的扩展风格。

GWL_HINSTANCE

-6

设置一个新的应用程序实例句柄。

GWL_ID

-12

设置一个新的窗口标识符

GWL_STYLE

-16

设定一个新的窗口风格。

GWL_USERDATA

-21

设置与窗口有关的32位值。每个窗口均有一个由创建该窗口的应用程序使用的32位值。

GWL_WNDPROC

-4

为窗口设定一个新的处理函数。

GWL_HWNDPARENT-8改变子窗口的父窗口,应使用SetParent函数。

当hWnd参数标识了一个对话框时,也可使用下列值:

常量        常量值                         意义

  DWL_DLGPROC  DWLP_MSGRESULT + sizeof(LRESULT) (值:4)       设置对话框过程的新地址。

  DWL_MSGRESULT 0                            设置在对话框过程中处理的消息的返回值。

  DWL_USER    DWLP_DLGPROC + sizeof(DLGPROC) (值:8)        设置的应用程序私有的新的额外信息,例如一个句柄或指针。

dwNewLong  指定的替换值。

  dwNewLong中可以使用以下一些列表控件的专用风格:

  LVS_ICON 大图标显示

  LVS_SMALLICON 小图标显示

  LVS_LIST 列表显示

  LVS_REPORT 详细报表显示

  LVS_EDITLABELS 结点的显示字符可以被编辑,对于报表风格来讲可编辑的只为第一列。

  LVS_SHOWSELALWAYS 在失去焦点时也显示当前选中的结点

  LVS_SINGLESEL 同时只能选中列表中一项

返回值:如果函数成功,返回值是指定的32位整数的原来的值。如果函数失败,返回值为0。