當前位置:編程學習大全網 - 源碼下載 - Vc向導源代碼

Vc向導源代碼

很簡單:

第壹步:在向導中將妳的樹控件與CTreeCtrl的壹個變量關聯起來(就像妳代碼中的m_Mess)。

第二步:在向導中添加樹控件的NM_Click消息(即鼠標點擊消息,下面假設的函數命名為OnClickTree)。

第三步:將妳的數據添加到代碼中(主要是在初始化樹控件數據的函數中,比如妳代碼中的OnInitDialog())。

Htree item hroot = m _ ctrl tree。insertitem("北京");

m_ctrlTree。SetItemData(hRoot,1);

Htree item hchild = m _ ctrl樹。insertitem("朝陽區",hRoot);

m_ctrlTree。SetItemData(hChild,2);

HChild = m_ctrlTree。InsertItem("海澱區",hRoot);

m_ctrlTree。SetItemData(hChild,3);

註意:我用了上面的SetItemData函數,主要是給不同的節點添加不同的標簽。

,妳可以在下面的點擊消息函數中看到它的作用。

步驟4:將鼠標點擊消息響應代碼添加到OnClickTree函數中。

c point pt = GetCurrentMessage()-& gt;pt;//獲取當前鼠標點擊消息的坐標點。

m_ctrlTree。screento client(& amp;pt);//將鼠標的屏幕坐標轉換為樹控件的工作區坐標。

UINT u flags = 0;

HTREEITEM hItem = m_ctrlTree。HitTest(pt & amp;u flags);//然後做壹個點擊測試。

如果((hItem!= NULL)& amp;& amp(TVHT _ ONITEM & ampulags))//如果點擊的位置在節點位置之上,

{

m_ctrlTree。SelectItem(hItem);

//獲取我們壹開始設置的數據。請註意,這就是我開始為每個節點設置不同數據的原因。當然,如果妳的數據節點較少,也可以獲取節點的文本,比如上面設置的“海澱區”,然後通過比較字符串來判斷妳點擊了哪個節點。

int nDat = m_ctrlTree。GetItemData(hItem);

//然後就可以根據不同的節點完成不同的動作。

開關(nDat)

{

案例1:

AfxMessageBox(“北京”);

打破;

案例二:

AfxMessageBox("北京-& gt;朝陽區”);

打破;

案例三:

AfxMessageBox("北京-& gt;海澱區”);

打破;

默認值:

AfxMessageBox(" ERROR ");

}

}

//如果這樣還不能解決妳的問題,我真的很無語了。給妳,老板,哈哈哈哈哈哈。

  • 上一篇:如何運營好壹個企業微信公眾號僅需四步,不看後悔
  • 下一篇:股票技術分析:如何從日K線中找黑馬
  • copyright 2024編程學習大全網