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

請問如何用Ttree樹狀結構,寫一個類似像VC裡左邊的樹狀結構呢

尚未結案
gofome
一般會員


發表:23
回覆:9
積分:6
註冊:2003-05-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-06-20 13:25:46 IP:140.117.xxx.xxx 未訂閱
請問如何用Ttree樹狀結構,寫一個類似像VC裡左邊的樹狀結構呢 謝謝
turboted
版主


發表:95
回覆:754
積分:452
註冊:2002-07-23

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-06-20 14:45:42 IP:61.30.xxx.xxx 未訂閱
可以貼個圖上來看看嗎
gemi0305
版主


發表:81
回覆:564
積分:629
註冊:2003-05-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-06-20 14:54:51 IP:210.66.xxx.xxx 未訂閱
gofome你好~ Ttree樹狀結構... 在bcb好像有個Treeview,不知和你所說的一不一樣, 這裡有別人寫的作品,有程式碼,可以先看看, http://delphi.ktop.com.tw/topic.php?topic_id=30476 http://delphi.ktop.com.tw/topic.php?topic_id=24620 http://delphi.ktop.com.tw/topic.php?topic_id=26424    有問題再提出來大家討論~ 國泰平安 發表人 -
gemi0305
版主


發表:81
回覆:564
積分:629
註冊:2003-05-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-06-20 15:31:26 IP:210.66.xxx.xxx 未訂閱
大約簡單的說明TreeView的用法, 首先要建立幾個暫存用的子節點元件TTreeNode, 以指標變數宣告之 如:  TTreeNode *root;   root = new TTreeNode(TreeView1->Items);    要建立節點,可用Add()或AddChild() 一個是建平行的,一個是建子節點 如: root=TreeView1->Items->Add(NULL,"Root");    要指定圖案可用 root->ImageIndex=.... 這是treeview最基礎的東西~ 國泰平安
gofome
一般會員


發表:23
回覆:9
積分:6
註冊:2003-05-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-06-27 20:41:33 IP:140.117.xxx.xxx 未訂閱
那能不能像VC的樹狀結構一樣, 如點到如class(類別)裡的東西後 VC右邊視窗就會跑出對映的東西出來
gemi0305
版主


發表:81
回覆:564
積分:629
註冊:2003-05-11

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-06-27 22:53:05 IP:61.224.xxx.xxx 未訂閱
gofome你好,    可以AddObject(),或AddChildObject()來做, 這裡有一個bcb help中的範例,你可以試試 在form中放入三個edit、一個treeview、一個label 二個button,再加入以下的code, run之後,可以建一treenode並把三個edit的值放入, 之後,只要點一下所建出來的node,label就會跑出你給這個node的值, bcb help中的範例: 以下放在.h檔裡-------------------  
typedef struct MyRec
{
  AnsiString FName, LName;    } TMyRec;
typedef TMyRec* PMyRec;
 
以下放在.cpp裡-------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
PMyRec  MyRecPtr;
int TreeViewIndex;
TTreeNodes* pItems;     MyRecPtr = new TMyRec;
 MyRecPtr->FName = Edit1->Text;
 MyRecPtr->LName = Edit2->Text;
 TreeViewIndex = StrToInt(Edit3->Text);
 pItems = TreeView1->Items;
 if (pItems->Count == 0)
   pItems->AddObject(NULL, "Item"   IntToStr(TreeViewIndex), MyRecPtr);
 else if ((TreeViewIndex < pItems->Count) && (TreeViewIndex >= 0))          pItems->AddObject(pItems->Item[TreeViewIndex], "Item"   IntToStr(TreeViewIndex), MyRecPtr);    }
//-----------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
   Label1->Caption = PMyRec(TreeView1->Selected->Data)->FName   " "  
                 PMyRec(TreeView1->Selected->Data)->LName;    }
//-----------------------------------------------------------------    
國泰平安 發表人 - gemi0305 於 2003/06/27 22:55:36
系統時間:2024-05-03 12:55:16
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!