• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 131, comments - 12, trackbacks - 0, articles - 0
              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
            方法一:
            void CTreeTest_demoDlg::ChangeTreeItemAll(CTreeCtrl &tree, HTREEITEM hItem,BOOL bSelect) 
            HTREEITEM x = tree.GetChildItem(hItem); 
            if(NULL == x) return; 
            do
            tree.SetCheck( x, bSelect ); 
            ChangeTreeItemAll(tree,x,bSelect);
            }
            while( ( x = tree.GetNextSiblingItem( x ) )!= NULL ); 
            }

             void CTreeTest_demoDlg::OnNMClickTree(NMHDR *pNMHDR, LRESULT *pResult)
             {
              // TODO: 在此添加控件通知處理程序代碼
             
              CPoint point; 
              UINT pflags; 
              GetCursorPos(&point); 
              m_ctrTree.ScreenToClient(&point); 
              HTREEITEM hitItem = m_ctrTree.HitTest( point, &pflags );
              if ( pflags & (TVHT_ONITEMSTATEICON )) 
             
             
              //if(m_bSelectDirect) // 選中父結(jié)點(diǎn)時(shí)他的直接孩子(兒子)結(jié)點(diǎn)同時(shí)被選中 
              //{ 
              // if ( m_ctrTree.GetCheck( hitItem ) )
              //
              // ChangeTreeItemDirect(m_ctrTree,hitItem,FALSE); 
              // }
              // else 
              //
              // ChangeTreeItemDirect(m_ctrTree,hitItem,TRUE); 
              // }
              //} 
            //   if(m_bSelectAll) // 選中父結(jié)點(diǎn)時(shí)他的孩子結(jié)點(diǎn)以及所有后代(孫子)的節(jié)點(diǎn)被選中 
               
                if ( m_ctrTree.GetCheck( hitItem ) ) 
               
                ChangeTreeItemAll(m_ctrTree,hitItem,FALSE); 
               
                else 
                {
                ChangeTreeItemAll(m_ctrTree,hitItem,TRUE); 
               
                }
             
              *pResult = 0;
             }


            方法二:
            void CTreeTest_demoDlg::UpdateTreeCheck(const HTREEITEM hParent, const BOOL flag) 
            if (m_ctrTree.ItemHasChildren(hParent)) 
            HTREEITEM hNextItem; 
            HTREEITEM hChildItem = m_ctrTree.GetChildItem(hParent); 
            while (hChildItem != NULL) 
            //遞歸獲取當(dāng)前節(jié)點(diǎn)下的子節(jié)點(diǎn) 
            m_ctrTree.SetCheck(hChildItem,flag); 
            UpdateTreeCheck(hChildItem,flag); 
            hNextItem = m_ctrTree.GetNextItem(hChildItem, TVGN_NEXT);
            hChildItem = hNextItem;
            void CTreeTest_demoDlg::OnNMClickTree(NMHDR *pNMHDR, LRESULT *pResult)
            {
            // TODO: 在此添加控件通知處理程序代碼
            DWORD dw = GetMessagePos();
            CPoint pt(LOWORD(dw),HIWORD(dw)); //鼠標(biāo)的屏幕坐標(biāo)
            CPoint ptClient; 
            CRect rcPart;
            m_ctrTree.GetWindowRect(rcPart);
            ptClient.x = pt.x - rcPart.left;
            ptClient.y = pt.y - rcPart.top; 
            UINT uFlags;
            HTREEITEM hItem = m_ctrTree.HitTest(ptClient, &uFlags); 
            if ((hItem != NULL) && (uFlags & TVHT_ONITEMSTATEICON)) 
            if (m_ctrTree.ItemHasChildren(hItem)) 
            BOOL flag = m_ctrTree.GetCheck(hItem); //這時(shí)父節(jié)點(diǎn)還沒(méi)有更新,需要取反 
            UpdateTreeCheck(hItem,!flag); 
            }
            m_ctrTree.Select(hItem, TVGN_CARET);
            *pResult = 0;
            }

            只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            精品久久人人妻人人做精品| 久久国产精品一区二区| 亚洲欧美久久久久9999| 国产精品成人久久久| 欧洲精品久久久av无码电影| 久久亚洲精品中文字幕| 国内精品久久久久国产盗摄| 久久久久久精品免费免费自慰| 久久99精品久久只有精品 | 久久精品国产第一区二区三区 | 久久国产美女免费观看精品| 亚洲欧美久久久久9999| 久久国产成人精品麻豆| 久久久SS麻豆欧美国产日韩| 久久久久久狠狠丁香| 欧美亚洲另类久久综合婷婷| 久久精品无码专区免费东京热| 久久久久亚洲AV无码去区首| 久久精品人人做人人爽电影蜜月| 久久久久亚洲AV无码专区桃色| 97久久精品无码一区二区天美| 亚洲国产成人久久一区WWW| 中文字幕亚洲综合久久2| 精品久久久久久久无码| 久久久久久精品无码人妻| 午夜精品久久久久成人| 成人国内精品久久久久影院VR| 久久久久久久久久久久中文字幕| 亚洲中文字幕伊人久久无码| 国产AⅤ精品一区二区三区久久 | 国产精品女同一区二区久久| 久久久av波多野一区二区| 囯产极品美女高潮无套久久久 | 久久人人爽人爽人人爽av| 99久久免费国产精精品| 久久婷婷成人综合色综合| 久久综合88熟人妻| 久久久久99精品成人片直播| 国产V亚洲V天堂无码久久久| 精品国产乱码久久久久久1区2区| 久久精品国产亚洲AV麻豆网站 |