如何正確設定treeview第一個節點的圖示? |
答題得分者是:RaynorPao
|
help
一般會員 發表:12 回覆:54 積分:13 註冊:2002-06-14 發送簡訊給我 |
請教告位先進,
我使用treeview元件,並希望在各節點前面有一個圖示.
但是我發現第一個節點的圖示(一開始是對的)在點選之後, 就會變成imagelist裏的第一個圖示! 不知如何解決?請求指點. 程式碼如下: (TV_data是一個treeview instance的名稱) root:= TtreeNode.Create(TV_data.items);
root:=TV_data.Items.AddChild(nil,'第一層節點');
root.ImageIndex:=1;
node1:=TtreeNode.Create(TV_data.items);
node1:=TV_data.Items.AddChild(root,'子節點1');
node1.ImageIndex:=1;
node2:=TtreeNode.Create(TV_data.items);
node2:=TV_data.Items.AddChild(root,'子節點2');
node2.ImageIndex:=1; 以上程式在點選展開第一層節點時, 該層的圖示會變成imageindex=0的圖示. gogowin
------
gogowin |
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
引言: 請教告位先進, 我使用treeview元件,並希望在各節點前面有一個圖示. 但是我發現第一個節點的圖示(一開始是對的)在點選之後, 就會變成imagelist裏的第一個圖示! 不知如何解決?請求指點. 程式碼如下: (TV_data是一個treeview instance的名稱) root:= TtreeNode.Create(TV_data.items); root:=TV_data.Items.AddChild(nil,'第一層節點'); root.ImageIndex:=1; node1:=TtreeNode.Create(TV_data.items); node1:=TV_data.Items.AddChild(root,'子節點1'); node1.ImageIndex:=1; node2:=TtreeNode.Create(TV_data.items); node2:=TV_data.Items.AddChild(root,'子節點2'); node2.ImageIndex:=1; 以上程式在點選展開第一層節點時, 該層的圖示會變成imageindex=0的圖示.help 你好: 除了 ImageIndex 的屬性之外 還有一個屬性叫做 SelectedIndex 喔 --
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
ccchen
版主 發表:61 回覆:940 積分:1394 註冊:2002-04-15 發送簡訊給我 |
TreeNode在未被選擇之狀況顯示imageindex所指示之圖, 在被select時則顯示selectedindex之值, 因此selectedINdex也須設定 其實Treeview還有另一組imgae叫stateImages, 用Treenode之stateIndex來選擇. RunTime你可以藉由改變StateIndex來顯示不同的圖, 例如放checkbox在item前, click時改變stateIndex 在你的情況(ICON不隋狀態改變)也可用stateImages
將Treeview之images property清除, 改設在StateImages
node1.ImageIndex:=1改成node1.stateIndex:=1...
如此也不會有原來click時ICON不見的問題
|
help
一般會員 發表:12 回覆:54 積分:13 註冊:2002-06-14 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |