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

有關TreeView的問題?

答題得分者是:Fishman
minjiu
中階會員


發表:27
回覆:119
積分:69
註冊:2002-06-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-12-02 10:53:09 IP:218.164.xxx.xxx 未訂閱
假設我有資料檔,有以下2個欄位,請問要如何利用TreeView,以Tree的方式表現出來(如下圖)...    這個問題之前我已有問過,請參考... http://delphi.ktop.com.tw/topic.php?TOPIC_ID=39765    但...若TreeID超過10,就會有BUG出現(TreeNode會加錯地方)... 請問有比較好的解決方法嗎?煩請各位高手回答一下吧!!謝謝!!    
[TreeID] [TreeName]
=======================
1        ROOT
1,1         A
1,1,1         A1
1,10        J
1,1,2         A2
1,1,3         A3
1,2         B
1,2,1         B1
1,3         C
1,3,1         C1
1,4        D
1,5        E
1,6        F
1,7        G
1,8        H
1,9        I
========================    TreeView產生結果:
ROOT
|-------AA
|        |
|        |-------A1
|        |
|         |-------A2
|        |
|         |-------A3
|
|-------BB
|        |
|         |-------B1
|
|-------C
|
 -------C1
|
|-------D
|
|-------E
|
|-------F
|
|-------I
|
|-------J
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-12-02 11:20:20 IP:210.65.xxx.xxx 未訂閱
Hi:    如果是我,我的資料檔會如此定義
[TreeID] [TreeName] [ParentTreeID]
==================================
1         ROOT
2         A          1
3         A1         2
4         A2         2
5         A3         2
6         B          1
7         B1         6
8         C          1
9         C1         8
10        D          1
11        E          1
12        F          1
13        G          1
14        H          1
15        I          1
16        J          1
==================================
然後再用遞迴函數的方式來建立 TreeView -------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman
minjiu
中階會員


發表:27
回覆:119
積分:69
註冊:2002-06-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-12-02 11:29:18 IP:218.164.xxx.xxx 未訂閱
引言: Hi: 如果是我,我的資料檔會如此定義
[TreeID] [TreeName] [ParentTreeID]
==================================
1         ROOT
2         A          1
3         A1         2
4         A2         2
5         A3         2
6         B          1
7         B1         6
8         C          1
9         C1         8
10        D          1
11        E          1
12        F          1
13        G          1
14        H          1
15        I          1
16        J          1
==================================
然後再用遞迴函數的方式來建立 TreeView -------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 -------------------------------- < face="Verdana, Arial, Helvetica"> 我本來也是定義成這樣,但因為某些原因...所以不能定成這樣...><
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-12-02 11:50:32 IP:210.65.xxx.xxx 未訂閱
Hi:    可否說說原因? -------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman
minjiu
中階會員


發表:27
回覆:119
積分:69
註冊:2002-06-26

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-12-02 13:48:12 IP:218.164.xxx.xxx 未訂閱
引言: Hi: 可否說說原因? -------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 -------------------------------- < face="Verdana, Arial, Helvetica"> 有關權限及層級(等級)的判別...
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-12-02 14:12:43 IP:210.65.xxx.xxx 未訂閱
Hi:    好吧,看來你的問題應該是在排序(我猜的),既然如此,何不乾脆把 TreeID 改為
 
[TreeID] [TreeName]
=======================
01        ROOT
01,01     A
01,01,01  A1
01,01,02  A2
01,01,03  A3
01,02     B
01,02,01  B1
01,03     C
01,03,01  C1
01,04     D
01,05     E
01,06     F
01,07     G
01,08     H
01,09     I
01,10     J
========================
若會超過100,直接改為
[TreeID]   [TreeName]
=======================
001         ROOT
001,000     A
001,000,001 A1
001,001,002 A2
001,001,003 A3
001,002     B
001,002,001 B1
001,003     C
001,003,001 C1
001,004     D
001,005     E
001,006     F
001,007     G
001,008     H
001,009     I
001,010     J
========================
一勞永逸 -------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman
系統時間:2024-06-21 13:11:58
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!