在CTreeCtrl控件建立完成之后,修改它的style

我们一般是在CTreeCtrl建立的时候,调用其create函数来设定树形控件的style的。
但是,我们又常常在资源视图中,绘制一个树形控件,然后关联一个CTreeCtrl m_treeDsp成员变量。
这种情况下,我们不能调用create函数来设定它的style(因为它已经建立了)。

下面这种方法,可以在CTreeCtrl控件建立完成之后,修改它的style,以下程序推荐在OnInitDialog里调用。

HWND hTree
GetDlgItem( IDC_TREE_DSP, &hTree) //获得树形控件句柄hTree
SetWindowLong( hTree, GWL_STYLE,WS_VISIBLE | WS_TABSTOP | WS_CHILD | WS_BORDER | TVS_HASBUTTONS | TVS_LINESATROOT | TVS_HASLINES | TVS_DISABLEDRAGDROP )

以下附上各STYLE的意义:

树控制的风格可以是下列值的组合:
  
TVS_HASLINES 表示树控制在各子项之间存在连线;
  
TVS_LINESATROOT 表示树控制在根项之间存在连线;

TVS_HASBUTTONS 表示树控制视在父项左侧存在展开合拢控制按钮;
  
TVS_EDITLABELS 表示可以控制鼠标单击修改树项的名称;
  
TVS_SHOWSELALWAYS 表示选中项即使在窗口失去输入焦点时仍然保持选中状态;
  
TVS_DISABLEDRAGDROP表示禁止树控制发送TVN_BEGINDRAG消息


你可能感兴趣的:(c/c++基础,MFC)