📄 gentree.htm
字号:
<TD vAlign=center width="4%"> </TD>
<TD width="65%"><STRONG>树状控件的应用(选择出阵武将)</STRONG></TD>
<TD width="18%"><FONT
color=#ff0000> <FONT
color=#009999></FONT></FONT></TD>
<TD align=right width="13%"><FONT color=#ff0000>【字体:<A
href="javascript:fontZoomA();"><FONT color=#ff0000>小</FONT></A> <A
href="javascript:fontZoomB();"><FONT
color=#ff0000>大</FONT></A>】</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR vAlign=center align=middle>
<TD class=main_ArticleTitle style="WORD-BREAK: break-all" colSpan=2
height=50>树状控件的应用(选择出阵武将)</TD></TR>
<TR vAlign=center align=middle>
<TD class=main_ArticleSubheading style="WORD-BREAK: break-all"
colSpan=2></TD></TR>
<TR align=middle>
<TD class=Article_tdbgall colSpan=2>作者:佚名 文章来源:<A
href="http://www.99inf.net/ShowCopyFrom.asp?ChannelID=1004&SourceName=不详">不详</A> 点击数:
<SCRIPT language=javascript src=""></SCRIPT>
更新时间:2007-7-1 <A
title=收藏的网页将被永久地保存到新浪ViVi收藏夹http://vivi.sina.com.cn
href="javascript:d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(vivi=window.open('http://vivi.sina.com.cn/collect/icollect.php?pid=2008&title='+escape(d.title)+'&url='+escape(d.location.href)+'&desc='+escape(t),'vivi','scrollbars=no,width=480,height=480,left=75,top=20,status=no,resizable=yes'));vivi.focus();"><IMG
src="树状控件的应用(选择出阵武将) - VC编程.files/vivi_coop1.gif" align=absMiddle
border=0></A></TD></TR>
<TR>
<TD class=main_tdbg_760 id=fontzoom style="WORD-BREAK: break-all" vAlign=top
colSpan=2 height=300>
<TABLE cellSpacing=0 cellPadding=10 align=left border=0>
<TBODY>
<TR>
<TD><!--插入广告JS代码--></TD></TR></TBODY></TABLE>
<DIV style="FLOAT: left">
<SCRIPT language=javascript
src="树状控件的应用(选择出阵武将) - VC编程.files/4.js"></SCRIPT>
</DIV>
<DIV style="CLEAR: right">
<DIV id=newbooks1 align=center><FONT
color=red><B>正在装载数据……</B></FONT></DIV>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
<FONT size=5>树状控件的应用</FONT></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></SPAN></FONT><FONT
size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
<FONT size=2>何志丹</FONT></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下面是树状控件的一些应用</SPAN><SPAN
lang=EN-US>,</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">由于是由于用于演示</SPAN><SPAN
lang=EN-US>,</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所以结构并不合理</SPAN><SPAN
lang=EN-US>.</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">其效果如图所示</SPAN><SPAN
lang=EN-US>..</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN
lang=EN-US><V:SHAPETYPE id=_x0000_t75 stroked="f" filled="f"
path="m@4@5l@4@11@9@11@9@5xe" o:divferrelative="t" o:spt="75"
coordsize="21600,21600"><V:STROKE
joinstyle="miter"></V:STROKE><V:FORMULAS><V:F
eqn="if lineDrawn pixelLineWidth 0"></V:F><V:F eqn="sum @0 1 0"></V:F><V:F
eqn="sum 0 0 @1"></V:F><V:F eqn="prod @2 1 2"></V:F><V:F
eqn="prod @3 21600 pixelWidth"></V:F><V:F
eqn="prod @3 21600 pixelHeight"></V:F><V:F eqn="sum @0 0 1"></V:F><V:F
eqn="prod @6 1 2"></V:F><V:F eqn="prod @7 21600 pixelWidth"></V:F><V:F
eqn="sum @8 21600 0"></V:F><V:F eqn="prod @7 21600 pixelHeight"></V:F><V:F
eqn="sum @10 21600 0"></V:F></V:FORMULAS><V:PATH o:connecttype="rect"
gradientshapeok="t" o:extrusionok="f"></V:PATH><O:LOCK aspectratio="t"
v:ext="edit"></O:LOCK></V:SHAPETYPE><V:SHAPE id=_x0000_i1027
style="WIDTH: 184.5pt; HEIGHT: 150pt" o:ole="" type="#_x0000_t75"><IMG
src="树状控件的应用(选择出阵武将) - VC编程.files/CSDN_Dev_Image_2003-11-111739510.htm"
o:title=""><FONT size=3></FONT></V:SHAPE></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><B><FONT size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">步骤如下</SPAN><SPAN
lang=EN-US>:</SPAN></FONT></B></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><B><FONT size=3><SPAN
lang=EN-US><O:P></O:P></SPAN></FONT></B></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=3><B><SPAN
lang=EN-US>1,Insert -> new class,</SPAN></B><B><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">插入一个新类</SPAN><SPAN
lang=EN-US>CMyCtrl,</SPAN></B><B><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">基类为</SPAN><SPAN
lang=EN-US>CTreeCtrl.</SPAN></B></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=3><B><SPAN
lang=EN-US><O:P></O:P></SPAN></B></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=3><B><SPAN
lang=EN-US>2,</SPAN></B><B><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">利用类向导为</SPAN><SPAN
lang=EN-US>CMyTree</SPAN></B><B><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">添加</SPAN><SPAN
lang=EN-US>WM_PANIT</SPAN></B><B><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的响应函数</SPAN><SPAN
lang=EN-US>.<O:P></O:P></SPAN></B></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><B><FONT size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">代码如下</SPAN><SPAN
lang=EN-US>:<O:P></O:P></SPAN></FONT></B></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: blue; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">void</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">
CMyTree::OnPaint() <O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">{<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 1">
</SPAN>CPaintDC dc(</SPAN><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: blue; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">this</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">);
<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 1">
</SPAN>CWnd::DefWindowProc( WM_PAINT, (WPARAM)dc.GetSafeHdc(), 0
);<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 1">
</SPAN>HTREEITEM hItem = </SPAN><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: blue; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">this</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">->GetFirstVisibleItem();<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 1">
</SPAN></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: blue; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">while</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">(NULL
!= hItem)<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 1">
</SPAN>{<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 2">
</SPAN>UINT selflag = TVIS_DROPHILITED |
TVIS_SELECTED;<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 2">
</SPAN></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: blue; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">if</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">(GetItemState(
hItem, selflag ) & selflag)<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 2">
</SPAN>{<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 3">
</SPAN>hItem = GetNextVisibleItem(hItem);<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none"
align=left><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: black; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt"><SPAN
style="mso-tab-count: 3">
</SPAN></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 10pt; COLOR: blue; mso-bidi-font-size: 12.0pt; mso-font-kerning: 0pt">continue</SPAN><SPAN
lang=EN-US
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -