線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1391
推到 Plurk!
推到 Facebook!

如何在 TreeNode 裡頭附帶資料

尚未結案
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-09 16:07:44 IP:61.222.xxx.xxx 未訂閱
各位好: 又有問題來請教各位了~ 我在使用 TreeView 的過程中,想在 TreeNode 裡頭附帶一些資料, 可是看了看,它不像一般的元件有 Tag 或 Hint 可以藏資料, 只有一個 Data 欄位可以用。 可是看了看站上討論文章,似乎都是另外再建立一個 struct 存放資料 再把 Data 指到這個 struct . 但是,現在我只不過想多附帶一個 AnsiString, 不太想小題大做,新建一個 struct 只為了放一個 AnsiString. 所以想請問大家的是,有什麼辦法可以在 TreeNode 裡頭附帶一個 AnsiString 呢? -- http://www.csie.nctu.edu.tw/~chtai/software.php 好用免費軟體的收集網頁
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-09 17:08:35 IP:140.112.xxx.xxx 未訂閱
chtai你好: 我試過把指標存在TreeNode的Icon index中就可以做到這個功能。只要在相關的ImageList不指定下,一般而言其icon的index是不會用到的。
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-09 18:05:30 IP:61.222.xxx.xxx 未訂閱
引言: chtai你好: 我試過把指標存在TreeNode的Icon index中就可以做到這個功能。只要在相關的ImageList不指定下,一般而言其icon的index是不會用到的。
請問 pwipwi 大哥,能寫段 code 給我參考嗎? 你這樣說,我還不太明白哩~ 另外,還有別的方法嗎? 目前雖然沒用到 icon, 可是難保以後客戶不會要求阿 --
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-06-09 20:39:01 IP:219.84.xxx.xxx 未訂閱
一共有三個index可以放,一般同時三個都會用的的機會是很小的。另外在記憶體管理上也要注意一下。     
 
TTreeNode *NewNode;
NewNode->StateIndex = (int)(new AnsiString);
//NewNode->OverlayIndex = (int)(new AnsiString);
//NewNode->SelectedIndex = (int)(new AnsiString);
AnsiString& Text = *(AnsiString*)(NewNode->StateIndex);
...
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-06-10 02:20:24 IP:59.104.xxx.xxx 未訂閱
引言:
 
TTreeNode *NewNode;
NewNode->StateIndex = (int)(new AnsiString);
//NewNode->OverlayIndex = (int)(new AnsiString);
//NewNode->SelectedIndex = (int)(new AnsiString);
AnsiString& Text = *(AnsiString*)(NewNode->StateIndex);
...
不好意思,我還不太懂耶~ 假如我有以下這些: TTreeNode *pNode; AnsiString szText = "TEST"; 那我要怎麼把 szText 加到 pNode 呢? 當我要用的時候,又要怎麼取得 szText 呢? -- http://www.csie.nctu.edu.tw/~chtai/software.php 好用免費軟體的收集網頁
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-06-10 12:05:33 IP:140.112.xxx.xxx 未訂閱
// Allocate AnsiString pNode->StateIndex = (int)(new AnsiString); // Put AnsiString& Text = *(AnsiString*)(pNode->StateIndex); Text = "Test"; // Get AnsiString& Text = *(AnsiString*)(pNode->StateIndex); ShowMessage(Text); // Deallocate Ansistring delete (AnsiString*)(pNode->StateIndex);
bill534
一般會員


發表:38
回覆:51
積分:17
註冊:2007-02-22

發送簡訊給我
#7 引用回覆 回覆 發表時間:2007-03-22 09:59:18 IP:220.130.xxx.xxx 訂閱
我要在DATA,動態加入一個TOleControl可以嗎!
系統時間:2024-05-09 16:59:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!