默认树视图控件消息处理

【勇芳软件工作室】汉化HomePreviousNext

本节介绍树视图控件执行的窗口消息处理。因为特定于树视图控件的消息在别处讨论,所以它们不包括在这里。

信息进行处理
WM_COMMAND处理EN_UPDATEEN_KILLFOCUS编辑控制通知消息,并将所有其他编辑控制通知转发到父窗口。没有返回值。
WM_CREATE分配内存并初始化内部数据结构。如果成功则返回零,否则返回1。
WM_DESTROY释放与控件相关联的所有系统资源。它返回零。
WM_ENABLE启用或禁用控件。
WM_ERASEBKGND使用树视图控件的当前背景颜色擦除窗口背景。它返回TRUE。
WM_GETDLGCODE返回DLGC_WANTARROWS和DLGC_WANTCHARS值的组合。
WM_GETFONT返回当前标签字体的句柄。
WM_HSCROLL滚动树视图控件。如果滚动发生,则返回TRUE,否则返回FALSE。
WM_KEYDOWN当用户按ENTER键时发送NM_RETURN通知消息。当用户按方向键或PAGE UP,PAGE DOWN,HOME,END或BACKSPACE键时,它移动插入符号。当用户与这些键组合按下CTRL键时,它滚动树视图控件。它将TVN_KEYDOWN通知消息发送到父窗口。如果键被处理,则返回TRUE,否则返回FALSE。
WM_KILLFOCUS重新调整聚焦项目(如果有),并向父窗口发送NM_KILLFOCUS通知消息。
WM_LBUTTONDBLCLK取消标签编辑,如果双击项目,则将NM_DBLCLKNM_RDBLCLK通知消息发送到父窗口。如果父窗口返回TRUE,则树视图控件切换项目的展开状态,发送父窗口TVN_ITEMEXPANDINGTVN_ITEMEXPANDED通知消息。没有返回值。
WM_LBUTTONDOWN如果用户单击与父项相关联的按钮,则切换展开状态。如果用户单击了项目标签,则树视图控件将选择并设置焦点到项目。如果用户在释放鼠标按钮之前移动鼠标,则树视图控件将开始拖放操作。没有返回值。
WM_PAINT绘制树视图控件的无效区域。它返回零。如果【wParam中】参数为非空值,则控件将假定该值为HDC并使用该设备上下文绘制。
WM_RBUTTONDOWN检查项目是否被点击,并且拖动操作已经开始。如果操作已经开始,它会向父窗口发送TVN_BEGINRDRAG通知消息,并突出显示放置目标。否则,它会向父窗口发送NM_RCLICK通知消息。没有返回值。
WM_SETFOCUS重新调整重点项目(如果有),并向父窗口发送NM_SETFOCUS通知消息。
WM_SETFONT保存指定的字体句柄并使用新字体重新绘制树视图控件。
WM_SETREDRAW设置或清除重绘标志。重绘标志设置后,重新绘制树视图控件。它返回零。
WM_SIZE重新计算取决于树视图控件的客户区大小的内部变量。它返回TRUE。
WM_STYLECHANGED取消标签编辑,并使用新样式重绘树视图控件。它返回零。
WM_SYSCOLORCHANGE如果设置了重绘标志,则使用新颜色重绘树视图控件。没有返回值。
WM_TIMER开始编辑项目标签。如果用户单击关注项目的标签,树视图控件将设置定时器,而不是立即进入编辑模式。如果用户双击标签,定时器可以使树视图避免进入编辑模式。它返回零。
WM_VSCROLL滚动树视图控件。如果滚动发生,则返回TRUE,否则返回FALSE。